Security for mobile system

ABSTRACT

An automated system and method provides proactive and anticipatory services for the user or users of system based upon temporal, geographical, contextual, user preferences, availability, past activities, usage pattern, proximity to other users, programs or events or combinations of the above, enabling distribution of variable content and advertising in stationary as well as mobile devices.

This application is a Continuation of U.S. patent application Ser. No.13/674,612, filed Nov. 12, 2012, which is a Continuation of U.S. patentapplication Ser. No. 12/193,711, filed Aug. 18, 2008, which is aContinuation-In-Part of U.S. patent application Ser. Nos. 12/163,878 and12/163,973, both filed Jun. 27, 2008, each of which claims priorityunder 35 USC 119(e) to Provisional U.S. Patent Application No.60/946,618, filed on Jun. 27, 2007, and Provisional U.S. PatentApplication No. 60/965,104, filed on Aug. 17, 2007, all of theseapplications are incorporated herein by reference for any purpose. Thisapplication also claims priority under 35 USC 119(e) to Provisional U.S.Patent Application No. 60/965,104, filed on Aug. 17, 2007.

FIELD OF THE INVENTION

At least one embodiment of the present invention pertains to electronicdevices for communication, entertainment and/or organization such asadvanced mobile phones and other devices, and more particularly, to adevice with customizable functionality and form factor. At least oneembodiment of the present invention pertains to a electronic assistantsystem. The automated assistant provides automated, proactive andanticipatory services for the user.

BACKGROUND

Consumer electronic devices such as mobile electronic devices haveundergone significant technological advances in recent years.Availability of advanced silicon technology, processing power, memoryand advanced input/output (I/O) and display systems as well as anincreasing level of communication bandwidth including next generationwireless cellular as well as WiFi/WiMax wireless broadband technologiesenable the building of more-sophisticated devices.

Currently the majority of device innovations concentrate aroundincreasing the computing capability of wireless handsets. In some cases,wireless handsets of today are more powerful than supercomputers ofdecades ago. More memory, processing power and bandwidth are availabletoday, and the end consumer is able to generate and receive orders ofmagnitude more information compared to just a few short years ago.However, innovations in the areas of customization, organization andadvanced services remain behind the computational power increases. Infact, since the first major PDAs were introduced nearly 20 years ago,there has been little done to solve the organizational needs ofconsumers besides having access to an electronic version of a papercalendar. Despite the many available electric devices, the majority ofthe population is still relying on paper calendars due to their ease ofuse, reliability and lower cost and the few additional benefits offeredby their electronic counterparts.

The architecture of advanced mobile devices in the prior art is a highlyintegrated solution which does not allow for modularization anddetachability of components. The goal of most advanced mobile phonedesigns is to maximize the computing power of the device to support asmany features as possible and allow for future programmability andapplication development. This dictates a very high level of integration.At the core of this architecture is a high-powered integrated processorthat controls all processes within the mobile device. The integratedprocessor incorporates multiple micro-processing cores and digitalsignal processors enabling the device to run as a general purposemachine. The architecture generally utilizes a hybrid approach tocontrol the various components and programs running on the device.Overall it employs a PC-like environment with a general purposeoperating system (OS) which is capable of running any number of programswhich comply with its OS standards.

On the other hand, it needs to incorporate mechanisms for support ofreal time applications such as phones. Building a general-purpose engineto accommodate future programming and application capabilities as wellas making the device broadly applicable to a large number of usagescenarios by various device manufacturers inherently requires asignificant amount of overhead, significant wasted memory and computingresources, both passively as well as during runtime, to accommodatemostly unused features. It also significantly increases the effectivenumber of clock cycles per useful operation, the clock frequencyrequired to run the device in order to obtain a reasonable response timefor critical application steps, resulting in significant powerconsumption and cost.

To accommodate the general-purpose characteristic of the architecture, asignificant number of compromises are made, and as a result, theperformance of frequently used features can suffer due to interruptionsand accommodations made for such general-purpose items. In some cases,this has led to phones that take a long time to boot up, thusjeopardizing the main features of the device. In some cases, they drainthe device battery to an unacceptable level, disabling criticalfunctions such as emergency calling as well as increase the turn-on timeand device response time to a point of noticeable difference and delayin human interaction, especially upon starting up the device,eliminating the highly desired instant-on feature of the device.

FIG. 1 shows the block diagram of an example of the currentarchitecture. The integrated processor includes a number ofsub-processors, such as general purpose programmable computing cores anddigital signal processors, memory blocks, and drivers for a large numberof peripheral devices which may be attached to the device. Advancedmobile devices are designed to provide maximum integration and providemaximum programmability. The functionality needed by the majority ofmobile consumers, however, does not include an arbitrarily large numberof features and applications.

SUMMARY

One aspect of the technique introduced here is a scheduling system for amobile device, including a memory to store events and a scheduler toautomatically organize the events based on at least one of temporal,geographical, contextual availability, user-preference, past activities,usage pattern, proximity to other users or events, or combinationsthereof. The scheduler can be accessible via a mobile device, electronicaccess device, the internet, phone, or combinations thereof. Thescheduler can include a multi-user scheduling capability withmulti-level access control allowing authorized groups or individualusers the ability to schedule without viewing calendar detail, with viewall or part of calendar detail, with modify contents of calendar, orcombinations thereof. The scheduler can merge availability of multipleuser calendars for viewing among a shared group. The scheduler canperform scheduling functions on the network, solely on clients' mobiledevices or a combination thereof based on user requirements oravailability of network or mobile device. The scheduler can detectchange/delay in a schedule based on cross-referencing temporal,geographical, contextual information, user input, or combinationsthereof and to generate an automatic, real-time notification to affectedappointments and renegotiate schedules on the fly. The scheduler canprovide one-step access to information, documents, contacts, emails,locations, or combinations thereof from inside the calendar for eachappointment entry. The scheduler can provide live schedule progressentry, automatic notification, and adjustment to future appointments.The scheduler can include a request scheduler to initially prioritizedand to sent to the automated network server through a broadbandconnection. The scheduler can communicate with an automated server tocontact a service provider via phone and negotiates a schedule orcompletes requested transaction through a voice menu, using voicerecognition. The scheduler can provide one step access to user-definedand automated personal services.

An aspect of the technique described herein includes an automated visualsymbol display to highlight a current time position in the schedule.

An aspect of the technique described herein includes a system to performuser-defined and automated services from a group consisting of automatedinformation access, event and appointment scheduling, ordering,reservation, account inquiry and payment, and combinations thereof on amobile device, electronic access device, the internet, phone, orcombinations thereof.

An aspect of the technique described herein includes a request scheduleris to communicate with an automated server that communicates with therelevant servers on a computing network and negotiates a schedule,uploads or downloads information or completes requested transaction andreports the results back to the scheduler.

An aspect of the technique described herein includes a system that cangenerate at least one of personalized alerts and news based onuser-defined criteria based on at least one of temporal data,event-based criteria, financial data, usage pattern, current/futureactivity/proximity, or combinations thereof.

An aspect of the technique described herein includes a system to providea continuously updated alerts and/or news ticker line on a screen of amobile device.

An aspect of the technique described herein includes a system to pulladvertisements, coupons, promotions from vendors to a mobile devicebased on at least one of user preference, activity, usage pattern,current/future proximity/activity, or combinations thereof.

An aspect of the technique described herein includes a system togenerate automated user-defined or machine-generated statistics in anelectronic device based on past activities in multiple categories.

An aspect of the technique described herein includes a system to trackprogress on user or machine-defined tasks in the mobile device.

An aspect of the technique described herein includes a system is provideone-step access to progress tracking in various time groupings orcategories.

An aspect of the technique described herein includes a system thatincludes a live directory for a mobile device whose entries includetemporal, location and contextual data including at least one ofrelationships, contact history, link to contact history, or combinationsthereof with entries automatically updated.

An aspect of the technique described herein includes a system thatincludes one step access to relevant directory detail information.

An aspect of the technique described herein includes a system thatprovides one-step access to contacting entries on a personal listthrough various communication messaging including voice call, email,multimedia messaging, or combinations thereof.

An aspect of the technique described herein includes a system thatincludes drag and drop directory entries to specific category listings.

An aspect of the technique described herein includes a scheduling methodfor a mobile device, including storing a calendar events andautomatically organize the events based on at least one of temporal,geographical, contextual availability, user-preference, past activities,usage pattern, proximity to other users or events, or combinationsthereof. An aspect includes accessing the automatically organizedcalendar events via a mobile device, electronic access device, theinternet, phone, or combinations thereof. Organizing can includemulti-user scheduling with multi-level access control allowingauthorized groups or individual users the ability to schedule withoutviewing calendar detail, with view all or part of calendar detail, withmodify contents of calendar, or combinations thereof. Organizing caninclude merging availability of multiple user calendars for viewingamong a shared group. Organizing can include detecting change/delay in aschedule based on cross-referencing temporal, geographical, contextualinformation, user input, or combinations thereof and to generate anautomatic, real-time notification to affected appointments andrenegotiate schedules on the fly. Organizing can include automaticallygenerating visual symbol display to highlight a current time position ina schedule. Organizing can include providing a live schedule progressentry, automatic notification, and adjustment to future calendar events.Organizing can include performing user-defined and automated servicesfrom a group consisting of automated information access, event andappointment scheduling, ordering, reservation, account inquiry andpayment, and combinations thereof on a mobile device, electronic accessdevice, the internet, phone, or combinations thereof. Organizing caninclude initially prioritizing events and to sent to the automatednetwork server through a broadband connection. Organizing can includecommunicating with an automated server that communicates with therelevant servers on a computing network and negotiates a schedule,uploads or downloads information or completes requested transaction andreports the results back to the scheduler. Organizing can includeproviding a live directory for a mobile device whose entries includetemporal, location and contextual data including at least one ofrelationships, contact history, link to contact history, or combinationsthereof with entries automatically updated.

An aspect of the technique described herein includes a mobile device,with a processing element, a memory operatively connected to theprocessing element, and wherein the processing element is to performautomated security breach monitoring and multi-level security breachhandling procedure based on at least one of user location, activity,proximity, environmental and biological information, or combinationsthereof. A processing element can presents cloned data to a user when asecurity breach is detected. A processing element can erase the memoryby repeatedly writing a predetermined security pattern on all memory. Aprocessing element can allow access to all user communication andmessaging including landline and mobile calls, voice messages, email,and multimedia messaging. A processing element can determine locationand context dependent receipt of calls and messages in a mobile user'senvironment. A processing element can provide a single access to alluser communications and messaging. A processing element can receivemobile-originated phone calls with location identification in additionto caller identification information. A processing element can receivemultimedia messages embedded in voice communication and messaging.

An aspect of the technique described herein includes a mobile device,that includes single telephone number associated with the mobile deviceis further associated with multiple mobile phone devices to receive andsend voice or data calls and access the same user data. The mobiledevice can include additional cellular communication capability is builtin various locations including a vehicle or a dwelling.

An aspect of the technique described herein includes a mobile devicewith a processing element that allows a user to customize interfacefunctionality, location, look and appearance of buttons, andcombinations thereof.

An aspect of the technique described herein includes a mobile devicethat provides a single access to all messaging, content, paststatistics, present schedule, future plans and/or automated services inone screen.

One aspect of the technique introduced here is a mobile device thatincludes a core engine to control operation of the mobile device, and aplurality of modules coupled to the core engine, where each module isdedicated to perform a different one of a plurality of functionalityclasses of the mobile device, and each of the plurality of modulescontains its own processing element and memory. The mobile device hasuser-customizable functionality according to a user's needs and/ordesires. The mobile device may be in the form of a multi-function mobileelectronic system with distributed memory and processing elements. Suchsystem can include functionally distinct intelligent sub-systems (e.g.,modules) which together form a multi-functional mobile electronic systemwhile sharing information with and/or through a master subsystem (e.g.,a core engine). The sub-systems can further share tag information withand/or through the master subsystem. The system is easily extendable toadd additional functionality by adding additional functionally distinctsub-systems.

Another aspect of the technique introduced here is a mobile device witha user-customizable physical form factor. The mobile device may be inthe form of multi-function mobile electronic system with distributedmemory and processing elements, with the ability to attach and detachfrom the main system chassis (housing) at the manufacturing stage,assembly stage, post-packaging, or post-sale stage. The functionallydistinct intelligent sub-systems together form a multi-functional mobileelectronic system while sharing information/tag with and/or through themaster subsystem, with applicable control signals to enable suchsharing.

Another aspect of the technique introduced here is a mobile device withone or more detached intelligent displays for communication to, and/oras access to, mobile device and/or other devices. Further, a mobiledevice can be shared through use of such intelligent detachabledisplays. Independently operational small module displays can becombined to form a large display for the mobile device. The mobiledevice may include, or have associated with it, a plurality ofindependently operable display devices, which are combinable to form asingle larger display device for the mobile device.

Another aspect of the technique introduced here is a time-basedinformation system (TIBIS) with event-based storage, access andretrieval functionality, which can be used in a mobile device such asdescribed above and/or other type of processing system. The TIBIS caninclude information storage and organization (i.e., a file system) thatis based on time instead of file locations in a directory. Further, itcan include temporary storage and organization of event, informationtags, or content in user-specified or machine-defined time intervals ina short-term memory (STM). It further can include long-term or permanentstorage and organization of events, information tags, or content inuser-specified or machine-defined time intervals in a long-term memory(LTM). Such long-term or permanent storage and organization of event,information tags, or content may be implemented with no ability torewrite the memory. The STM may be implemented as local non-volatilememory of the mobile device. The LTM may also be implemented asnon-volatile memory, which may be local memory of the mobile device,which may be removable, or it may be remote memory on a network.

The TIBIS can include a method for capture, storage and retrieval ofinformation in an information storage device such as a mobile electronicsystem based on a multi-category tagging mechanism covering temporal,geographical/location, context as well as user-defined concepts. Thiscan involve generation, storage, distribution of multi-modal tagging ofevents in an electronic apparatus such as a mobile information device.It can also include a method for fast hardware-based search andretrieval of information based on the multi-modal tag system. The TIBISprovides information archiving based on time-based organization withoutdisk fragmentation, the need for multiple backup, or the possibility oftampering with data.

One aspect of the techniques introduced here is a method of capturingand scheduling user-requested personal services via a mobile device, anelectronic access device or the worldwide web.

Another aspect of the techniques introduced here is a method ofautomated information exchange via any common format for the purpose ofscheduling individual calendar entries via a mobile device, telephone orworld wide web initiated data or voice communication channel.

Another aspect of the techniques introduced here is a mobile deviceenabling the sharing of schedules among a set of users of services withdynamically updated timing and event information as included in a user'sprofile.

Another aspect of the techniques introduced here is a mobile deviceservice enabling proactive collecting of information relevant to theuser based on user input, past activity, current schedule and/or futureplans.

Another aspect of the techniques introduced here is a mobile deviceperforming security breach anticipation and a multi-level securitybreach handling procedure based on user location, activity, proximity,environmental and/or biological information.

Another aspect of the techniques introduced here is an operatingenvironment for an electronic device with ability to customizeuser-interface functionality, location, look and appearance of buttons.

Another aspect of the techniques introduced here is an operatingenvironment for an electronic device with of viewing and access of allcommunication, content and event and services at once.

Another aspect of the techniques introduced here is an operatingenvironment for an electronic device enabling instant viewing of paststatistics, present schedule and future plans.

Another aspect of the techniques introduced here is an operatingenvironment for a mobile device with News and Alerts ticker line showingall “user-relevant” News and Alerts, continuously updated.

Another aspect of the techniques introduced here is a method of definingand viewing Alerts/News based on $, T, E (money, time, event) in amobile device.

Another aspect of the techniques introduced here is an operatingenvironment for a mobile device with organization of lists of groups andone-step method for contacting them.

Another aspect of the techniques introduced here is a directory for amobile device with temporal, location and contextual data for each entryincluding but no limited to relationships, known since, call/messagehistory.

Another aspect of the techniques introduced here is a method oftransmitting and receiving location identification information in amobile calling environment.

Another aspect of the techniques introduced here is a location andcontext dependent receipt of calls and messages in a mobile user'senvironment.

Another aspect of the techniques introduced here is a method ofreceiving calls to one phone number on multiple devices and method ofreceiving calls to multiple phone numbers on one device in a mobileuser's environment.

BRIEF DESCRIPTION OF THE DRAWINGS

One or more embodiments of the present invention are illustrated by wayof example and not limitation in the figures of the accompanyingdrawings, in which like references indicate similar elements and inwhich:

FIG. 1 is a block diagram showing the architecture of a mobile device inthe prior art;

FIG. 2 is a block diagram showing an example of the architecture of amobile device in accordance with the techniques introduced here;

FIG. 3 illustrates an example of the operation of the giant statemachine (GSM);

FIG. 4 illustrates the data flow between various functional modules andthe core engine in a mobile device;

FIG. 5A shows a functional module in a micro-BGA package, such as may beassociated with one embodiment;

FIG. 5B shows an example of the display of a mobile device such as maybe used in conjunction with the functional module in FIG. 5A;

FIG. 5C shows an example of a circuit board on which are mounted variousfunctional modules and a core engine;

FIG. 5D shows an example of an external view of the assembled mobiledevice, according to the embodiment of FIGS. 5A through 5C;

FIGS. 6A and 6B show embodiments of functional modules connecting to acircuit board at the factory;

FIG. 7A shows a functional module in detachable form, such as may beassociated with another embodiment;

FIG. 7B shows a display device that may be used in conjunction with thefunctional modules in FIG. 7A;

FIG. 7C shows multiple detachable functional modules connected to aconnector channel;

FIG. 7D shows a core engine and other components of the mobile deviceconnected to a circuit board;

FIG. 7E shows the functional modules and connector channel of FIG. 7Cmounted within a device housing;

FIG. 7F shows an example of an external view of the assembled mobiledevice, according to the embodiment of FIGS. 7A through 7E;

FIG. 8A shows an independently operable functional module with its owndisplay, in detachable form;

FIG. 8B shows multiple functional modules such as shown in FIG. 8A,connected to a connector channel;

FIG. 8C shows an example of an exterior view of a mobile device whichhas multiple functional modules such as shown in FIG. 8A, each with itsown display, which collectively can be operated as a single largerdisplay;

FIG. 9 shows a cylindrical mobile device with additional modules asstackable disks;

FIG. 10 shows a radial module configuration device with a central coreand housing for additional modules around the core;

FIG. 11A shows a wrist-top mobile device with an additional detacheddisplay unit; FIG. 11B shows a mobile, wrist-top, entertainment,Information connectivity device such as a DVD player, PC or internetgateway with detached display units; FIG. 11C shows smaller stackedunits slide out (or unfold) and connect together to form a largerdisplay; FIG. 11D shows mobile device with multiple detached displayunits, providing access to multiple users on a single device.

FIG. 12 is block diagram illustrating the Horizontal RepositoryArchitecture;

FIG. 13 shows an example of the generation and processing of tags in thetime-based memory organization;

FIG. 14 shows the data flow of the modularized mobile architecture witha time based information system (TIBIS);

FIG. 15 illustrates an example of an algorithm for tag and contentsearches;

FIG. 16 shows the TIBIS operations facilitated by the core engine;

FIG. 17 shows an example of a multi-dimensional record for one client;

FIG. 18 shows a cluster of client databases;

FIG. 19 shows elements of a scheduled item;

FIG. 20 illustrates an example of automated service processing;

FIG. 21 illustrates the primary management functionality in the GSM inone embodiment;

FIG. 22 shows the functional blocks of the UI manager in one embodimentof an automated assistant system;

FIG. 23 shows a system level-view of hardware and software elements in amobile device in accordance with the techniques introduced here;

FIG. 24 shows a unified access view;

FIG. 25 shows an Alert/News setup screen;

FIG. 26 shows a view of user appointments as seen on the display,including the “NOW” button;

FIG. 27 shows the appointment detail for one appointment;

FIG. 28 shows a screen in which the user is able to view anotherperson's schedule using a drop-down menu step;

FIG. 29A illustrates one example of the directory listings; FIG. 29Billustrates one example of the directory detail;

FIG. 30 illustrates a screen in which a user is able to view all medicalcontacts and perform key functions;

FIG. 31A illustrates a screen in which a user is able to setup, view,update, and track plans; FIG. 31B illustrates a screen in which the usercan view progress tracking for tasks in specific categories or timegrouping.

FIG. 32 illustrates a screen in which a user is able to setup,automatically schedule and contact multiple classes of personal servicesand expense costs;

FIG. 33 illustrates a screen in which a user is able to setup multipleclasses of automated appointments and expense costs;

FIG. 34 illustrates a screen in which a user is able to manage bills andexpense costs;

FIG. 35 illustrates a screen in which a user is able to set up,automatically contact, manage personal lists;

FIG. 36 shows an embodiment of security processes for a mobile device;

FIG. 37 shows multiple levels of functions in the user environmenthierarchy;

FIG. 38 shows a unified top-level view in a UI of a mobile device;

FIG. 39 shows a customized “call for service” menu;

FIG. 40 shows a screen for customized website access;

FIG. 41 shows a unified communication messaging screen on a mobiledevice; and

FIG. 42 shows the generation of Location ID.

DETAILED DESCRIPTION

References in this specification to “an embodiment”, “one embodiment”,or the like, mean that the particular feature, structure orcharacteristic being described is included in at least one embodiment ofthe present invention. Occurrences of such phrases in this specificationdo not necessarily all refer to the same embodiment.

A “mobile device”, as the term is used herein, means any device that isdesigned to be worn by a person, carried in an article of clothing orpersonal accessory (e.g., a purse), or easily carried in one hand by aperson. As noted above, the functionality needed by the majority ofusers of mobile devices does not include an arbitrarily large number offeatures and applications. Having the technology for massive computationassembled at many places, it is desirable to alleviate the mobile devicefrom area- and power-consuming functionality that is available almosteverywhere. In its place, it is desirable to make the mobile deviceperform the functions that are essential for mobility (e.g. voice, text,video capture, storage and display, etc.) in the most robust fashion.

The present invention provides a robust solution for addressing theorganizational needs of mobile consumers by providing, among otherthings, a new customizable mobile device, optimized for mobile usage,which provides customizability and optimizes power, performance, andcost. A time-based intelligence system (TIBIS) is also introduced, whichallows for robust storage, access, and processing of information on themobile device. The techniques introduced here include an automatedmobile assistant system (“active secretary”) which provides proactiveand anticipatory services and life-management solutions for the consumeron the go. The automated assistant system incorporates security featuresat the mobile device and on the server side to provide additionalsecurity and privacy for consumers. Although the customized mobiledevice presented is the preferred embodiment for TIBIS and the automatedassistant, the inventions presented are applicable to other programmabledevices such as smart phones, PDAs and other computing devices.

(1) Customizable Mobile Device

(1A) Mobile Device with User-Customizable Functionality

The present invention offers consumers the ability to choose thefunctionality and form factor they desire in a mobile device. The mobiledevice incorporates a number of modules. Each module is dedicated toperform a specific type of user-level functionality, such as voicecommunication, text, video capture, storage, display, locationdetermination, games, etc. “User-level” functionality meansfunctionality that is directly perceivable by a human user of thedevice.

The approach introduced here allows users the flexibility of using thecomponents they need and none of the ones they do not need, allowing forcustomizability and reduction in cost and power dissipation.

The customized mobile platform introduced here allows people tocommunicate, entertain, and organize their mobile life. The mobiledevice uses “ultra thin client” architecture with custom-designeddedicated hardware for functions that need to be performed on thehandset. The design removes the need for a multitude of programmablemulti-function cores. This architecture results in high performance,fast response time, and very low-power consumption. In addition, thisarchitecture allows users access to a rich set of customizedapplications based on their needs from the network, as needed.

One aspect of the customized mobile device is a modularized architecturefor a mobile device (“Modularized Mobile Architecture”). The modularizednature of this architecture allows for the ability to choose thefunctional modules that are combined to make a mobile device. This givesthe ability to exchange and upgrade the functional modules over time.For this functionality, customization and flexibility, a level ofservice is established with the customer (user) making the device oftheir choice and giving the customer the ability to upgrade easily overtime. For example, one functional module may be a communication module,which can be upgraded if a faster communications technology becomesavailable to the user, without the need to discard the entire mobiledevice.

FIG. 2 shows a block diagram of the Modularized Mobile Architectureaccording to one embodiment. The architecture separates out thefunctional blocks for each major device function and removes large,power consuming general purpose processors as well as the accompanyingshared memory hierarchy. Each functional module has its own dedicatedprocessing element (PE) and memory element (ME). The PE in eachfunctional module can be, for example, a programmable microcontroller,application-specific integrated circuit (ASIC), programmable logicdevice (PLD), or other similar device or a combination of such devices.The ME in each functional module can be, for example, random accessmemory (RAM), read-only memory (ROM), flash memory, or other type ofmemory, or a combination of such types of memory.

The functional modules can include, for example, any one or more of: acommunication module (e.g. 3G), audio module, video module, GPS moduleand game module. By optimizing the PE to the specific functions beingperformed by its functional module, it is possible to reduce theunderlying area and power consumption of each functional module.Performance of each PE is better than the unified processing case withan integrated processor due to function specialization as well as thereduction in area, which facilitates timing requirements, placement andreliability of the PEs within each module. In some cases the performanceand area savings are such that they could allow for choosing an oldergeneration process technology while still maintaining the performancerequirements, which results in reduced manufacturing costs and overallcomponent cost of the device.

By providing separate memory for each functional unit, the majority ofissues with memory bottleneck are eliminated. Each functional module hasits own dedicated memory and MEs are not shared resources, as is thecase in traditional architectures. In other words, instead of separatememories for Instruction and Data for the whole system, thisarchitecture allows for separate memory for each application-specificarea for the mobile space.

This approach has many advantages over traditional architectures. Whileit allows for robust information sharing mechanism among functionalmodules, it is possible to make improvements to the choice of technologyused for the memory blocks to properly optimize for the type of databeing stored in that specific memory element. Depending on the type ofstored data and usage patterns, it is possible to vary the block sizeand read and write specifications of each memory element. Thearchitecture preserves and enhances the functionality of each individualfunctional unit while allowing these units to communicate with extremelylow overhead.

The core engine is an efficient hardware-optimized engine thatfacilitates the communication between the modules and provides thecentral functionality of the mobile device. The mobile device isdesigned to accommodate specific functionalities for the mobileenvironment rather than provide unlimited programmability. Thesignificant manipulations of data that occur in the mobile device are aset of operations designed for the functionality of the device, such asthe following:

CAPTURE STORAGE RETRIEVAL SEARCH DISPLAY TRANSMIT

Making these operations extremely efficient and not allocating resourcesfor unused functionality greatly reduces cost, increases performance andreduces power utilization. In a simplified manner, the core engineimplements a Giant State Machine (GSM) which is designed to control thedevice functionality in very high speed in hardware. An example of suchan operation is capturing an image from the camera module and sendingthe image out to the wireless communication module, which involvesCapture, Compress, Store and Transmit operations. The GSM orchestratesthese operations by generating the appropriate control signals. FIG. 3shows the GSM operation for this example.

The Modularized Mobile Architecture allows for robust and intelligent“sharing of information” among functional modules instead of “sharingresources”, and it resolves one of the major overheads associated withmanagement of shared resource. A major part of the tasks performed by atraditional operating system (OS) is resource management and interruptcontrol. This allows the system to manage access to shared resourcessuch as memory. In the Modularized Mobile Architecture introduced here,the significant computational overhead associated with a traditional OSas well as the memory requirements to store active as well as passivecomponents of such OS is eliminated.

The memory architecture is designed so that a small portion of thememory contents in each functional module, namely a set of extracted andstored “tags”, are communicated to the core engine and to otherfunctional modules as needed (the memory architecture is described belowin relation to TIBIS). As a result, a very robust interface is developedbetween the Core Engine and each functional module.

FIG. 4 illustrates the data flow between various functional modules andthe core engine in a mobile device, according to one embodiment. The MEin each functional module is divided between working memory (WM) andHorizontal Repository Memory (HM). WM is preferably a form of RAM, whileHM is preferably a form of nonvolatile memory, such as flash memory.Each functional module communicates directly with the core engine, andthe core engine orchestrates any required interaction between functionalmodules. The core engine also generates the required controls and masterpermissions for module designation for transmit and receive on the dataexchange block. The data exchange block is a bus designed for fast,efficient transfer of data among modules as necessary. An exchangeinterface unit is included in each functional module to allow for thisrobust communication. The bit width, impedance, signal integrity anddata transfer rates are optimized for a given cost model, performancerequirement, and available connector technology.

In one embodiment, programmable elements are included in the exchangeinterface unit in each module to allow for flexibility in the design.This programmability allows the signaling parameters to be adjusteddepending on the requirements for the best available technology. Forexample, it allows for sufficient buffering of data for proper assemblyand disassembly and timing of data to match the best available signalingfor the data exchange block. In one embodiment, data exchange block andthe core functionality of the core engine are combined to form aseparate device where individual mobile devices via appropriateconnectors connect to the device and can share, download and uploadinformation to perform a version of the functionalities describedherein. The mobile devices can use compatible connectors to the deviceor they can use standard connectors such as USB or other appropriateconnectors and the device includes the converter circuitry to connect tothe data exchange block.

While the individual memory blocks shown in FIG. 4 can be physicallyseparate memory devices, this is not a requirement, and the memory unitscan all or partly reside on the same physical memory device; however,each memory block is distinctly assigned to a functional module, hence,there is no sharing of the same block of memory. Each functional modulemay contain one or more HM units depending on the functionality themodule encompasses. These HM blocks can also reside in physicallydistinct memory blocks or segregated memory blocks within the samephysical memory. Initially the memory units are assigned based on theapplication as well as user requirements. Memory can be dynamicallyre-allocated based on user or system requirements. For example, when afunctional module is not being used, the associated memory can beallocated to other modules, or if a functional module has a need forexpanded memory usage and there is unused memory assigned to otherfunctional modules, it can be re-allocated. In addition, the modulararchitecture allows for the ability to upgrade the memory for eachfunctional module as needed.

(1B) Mobile Device with User Customizable Physical Form Factor

The mobile device architecture introduced above can integrate variouselectronic modules into a single customized device. The ModularizedMobile Architecture allows for customization of device functionalitybased on user preferences. This customization can occur at any ofseveral levels:

-   -   1. The modularized architecture can be applied to the design of        the mobile device at the chip level. Each functional block is        optimized and the chosen modules are all implemented on one        chip. This allows for customization at the chip level and        results in highest performance but least flexibility.    -   2. The choice of modules can be made at the package level, where        selected functional modules fabricated on small micro-boards are        assembled to produce the device. Alternatively, advanced        packaging techniques are used to integrate each functional        module on a single package (e.g. multi-chip-module,        ball-grid-array (BGA) package, etc.). Selected functional        modules are assembled to build the customized mobile device.        This level of customization is done at the factory and offers        customization to the user without altering the manufacturing        process. In this implementation, the device is customizable by        the user at purchase order time and the modularity of the design        is exploited at the factory to provide the user the customized        solution desired; however, the device is not physically        detachable by the user, so its flexibility is limited since the        user can not reconfigure the device after delivery.    -   3. The third method of delivering customization is the most        flexible. In this approach, the functional modules and the        mobile device core housing are delivered to the user and the        user can attach or detach some of the modules at the point of        use. This allows for the customization to occur both at the        functional level as well as the physical level and offers the        most flexible option.

The customized mobile device allows users the flexibility of using thecomponents they need and none of the ones they do not need, by allowingfor the integration of a variety of modules that perform communication,computing, and a variety of input and output functions. This can resultin lower cost and power dissipation. It can provide freedom from thechoice of service provider by allowing the user to keep desiredelectronic components as well as stored information while having thefreedom to change service provider (i.e., to change the communicationmodule). It also removes the requirement of building multiple standardradio devices on the same mobile device (e.g. cellular, WiFi,Bluetooth); only radios that the user plans to use are added. It alsoprovides an easy upgrade path for the components that the user desireswith new nodes of technology without the need to replace the entiredevice.

Each module can be a functional module that is operable only within amobile device, or it can be an independently (individually) operablecomponent. Independently operable components have some level of userinterface as needed by that module and can be used on their own. When amodule is inserted into the mobile device, it has access to an expandedset of functionality for storage, display, I/O and communicationfacilities. While some modules can communicate directly (e.g., the audiomodule can be directly connected to the communication module), themodules are typically connected to the core engine on the mobile devicefor control and information sharing.

FIGS. 5A through 5D show an embodiment of a mobile device which hasfunctional modules integrated at packaging level. Each functional moduleis integrated in a micro-ball grid array (BGA) package. FIG. 5A shows afunctional module in a micro-BGA package. The functional modules and thecore engine are integrated on a printed circuit board (PCB). FIG. 5Cshows an example of a PCB on which are mounted various functionalmodules and the core engine. The interconnections are made through therouting channels on the PCB. The PCB is then encased inside the mobiledevice housing. The display is placed on top surface of the device andattached to the PCB through the display connector. FIG. 5B shows anexample of the display of the mobile device such as may be used inconjunction with the functional module in FIG. 5A. FIG. 5D shows anexample of an external view of the assembled mobile device. FIGS. 6A and6B show embodiments of functional modules connecting to a PCB at thefactory.

FIG. 7 shows another embodiment of a customized mobile device, which hasdetachable functional modules. FIG. 7A shows a detachable functionalmodule. In this embodiment, the functional modules do not haveindividual displays. Four modules are connected to the device throughthe connector channel placed at the center of the device. FIG. 7C showsmultiple detachable functional modules connected to a connector channel.The core engine is placed on a PCB at the bottom of the device and isconnected to the modules through the connector at the bottom of theconnection channel. FIG. 7D shows a core engine and other components ofthe mobile device connected to a circuit board. The modules, connectorchannel, and PCB are housed inside the mobile device housing. An LCDdisplay is placed on top of the device. FIG. 7B shows a display devicethat may be used in conjunction with the functional modules in FIG. 7A.FIG. 7E shows the functional modules and connector channel of FIG. 7Cmounted within the device housing. FIG. 7F shows an example of anexternal view of the assembled mobile device.

FIG. 8 shows another embodiment of the customized mobile device withdetachable components. In this embodiment, each of the functionalmodules has its own individual display device. The modules are slippedinto the mobile device housing and connect to the connection channel asdescribed above. On top of the mobile device, there is an opening in thetop surface of the housing for the display units. These modules areindependently operable and each module uses its own small display in thestand-alone mode of operation. The core engine keeps track of themodules that are connected and sends the appropriate control signals tothe circuitry for resizing the image appropriately. Once the modules areconnected to the mobile device, the core engine recognizes theindividual display units that are connected to the device and resizesthe screen so the mobile device has a single large display.

FIG. 8A shows a detachable, independently-operable functional modulewith its own display. FIG. 8B shows multiple functional modules such asshown in FIG. 8A, connected to a connector channel. FIG. 8C shows anexample of an exterior view of the mobile device which has multiplefunctional modules such as shown in FIG. 8A, where the individualdisplay devices of the functional modules collectively can be operatedas a single larger display.

All of the functional modules can be powered from the power supply ofthe mobile device. An independently operable module also has its ownon-board battery which is recharged when the module is connected to themain unit.

The module connectors are designed to facilitate the connection betweenthe functional modules and the core engine through the data exchangeblock. In the modularized architecture of the design, the data isexchanged between modules under the control of the core engine. The sizeand characteristics of the data buses from different modules may bedifferent. Instead of designing a custom connector for each module, aunified connector is designed to support all available modules in aparticular configuration. The choice of connector depends on the formfactor and bus speed. One option is a high-speed serial bus with a smallfootprint. Another option is a parallel bus for ease of signal routing.In one embodiment, a custom low-profile, parallel edge connector isused. This gives the flexibility of supporting a large number of moduleswith varying bus sizes and facilitates interconnection between themodules and the main core. Data at the I/O interface of each module isassembled or disassembled to match the connector's data bit width andtiming. The core engine facilitates the data exchange between themodules through appropriate control signals.

In addition to module choice, the user has the choice of device shape,size, and configuration. The device can have a variety of shapes, suchas square or rectangular, round, or cylindrical. Modules can beassembled in any of a variety of ways, such as connecting sideways toanother module or vertically as stackable disks.

FIG. 9 shows an embodiment of a cylindrical mobile device withfunctional modules connected in a stackable configuration. In thestackable configuration, modules connect on the side to each otherthrough the connection channel in the device housing. In anotherembodiment, the connections between the stackable modules can be on topand bottom of modules. The connectors are retracted mechanically beforea module is connected or disconnected from the device. Modules canconnect together directly as well as modules dropping into a devicehousing/carrier/chassis.

Other arrangements of modules are dictated by the desired industrialdesign of the mobile device. FIG. 10 shows a round device with a centralcore and housing for additional modules around the core. In this case,the modules are inserted inside the device housing and any unused moduleis left with an empty housing to preserve the overall look of thedevice.

The user also has the additional choice of having the assembled mobiledevice in a wrist-top configuration (worn as a watch), a clip-onconfiguration where it is worn on a belt or armband, a pendantconfiguration, as an ear-top device or a hand-held device.

In one wrist-top configuration, such as shown in FIG. 11A, when a phonecall is initiated or received, the unit slides out of the wristband 111and the user holds the device to the ear. Alternatively, the unitincludes an optional small pull-out microphone/speaker unit used duringcalls to keep phone calls private. FIG. 11A shows a wrist-top mobiledevice, with an example of different types of information/functionsshown on the display 112 (e.g., “STATS”, “CALLS”, “EMAILS”, “AUDIOS”,“STILLS”, “VIDEOS”, “PROCESS TRACKING”, “PLANS”, etc.) The core engineplus environmental sensors and/or biosensors are located on the bottomof the mobile device. In this embodiment, the device has a smalldisposable battery which is primarily used in an emergency to power thecommunication module when the main battery is discharged.

In addition to modules that support common mobile functionality such asaudio/video modules, GPS and games, the invention introduced here alsosupports other consumer electronics device functionalities that can beadded over time, such as biosensors, health monitoring devices,environmental sensors, etc. The Modularized Mobile Architecture allowsfor the functionality of the modules to be developed and optimizedindependently and can easily integrate essentially any module bymodifying the interface to fit the mobile device interface. As a result,the functionality of the device can be extended over time as new modulesare added to the device.

While many detachable modules can be independently operable, that is nota requirement. For example, a single memory or display module may not beoperable on its own, and there are modules that are supporting accessoryhardware for another module. A “super module” can incorporate a numberof module functions that are commonly used together.

In one embodiment, the MEs of each individual functional unit areremovable and swappable. This allows for quick and fast transfer andsharing of data among devices, as well as quick personal security andbackup feature.

Modules in detached mode which are connected to a communications modulecan be reconfigured over-the-air to support an array of functions in thestand-alone mode. This can be achieved through the use of fieldprogrammable logic as well as registers which can be updated remotely toallow for modified mode of operation of the module in a power efficientmanner.

(1C) Detached Intelligent Display

Mobile devices are faced with a continuous need for larger display sizesfor certain applications, such as viewing of photos, videos, surfing theweb, etc. The large size of the display adds significantly to the size,power dissipation and cost of the mobile device. However, in mostapplications there is not a continuous need for a large display, suchthat the associated additional weight, size, and power dissipation areunnecessary. The technique introduced here overcomes this barrier byseparating the requirements of the device from those of the displayunit.

In this technique, the mobile device has a very small display or nodisplay at all. This is the normal mode of operation, generally themobile mode of operation. As a result, the mobile device is small andhas low power dissipation. A group of larger displays are designed andmade available to the user upon request. These displays vary in featuressuch as size and display resolution. The initial display design is thesize of a business card to be carried in a wallet and used in a similarmanner. This display size is adequate for a large number of users in amobile environment. This detached display can be connected to the mobiledevice via direct wire connection or via wireless link. FIG. 11A shows awrist-top mobile device with a small onboard display with an additionaldetached wallet-sized display unit 113.

Another size display is a letter size display, which can be carried inthe user's briefcase among other paperwork and file folders. When a needfor such a display arises, such as for editing, viewing documents,photos or videos or presenting such material to a larger group, theletter size is the more appropriate usage model. As in the case of thewallet size display, the connection mechanism is established either viawires or wirelessly depending on the customer's selection at the time ofordering.

In the wireless mode, the display is turned on and is held by the userfor viewing, totally detached from the unit. The mobile unit staysnearby, for example in a pocket, purse, or worn on the wrist. The useronly holds up the display, which is smaller and less bulky, while havingaccess to all the functionality of the mobile device.

The display is powered by its own rechargeable battery which isrecharged with the mobile unit. The display is able to draw power fromthe handheld device through a wired connection. This is also the mode ofoperation if the display does not have its own battery (e.g.,ultra-light model). In cases where the display unit has a charged upbattery but the mobile device is low on battery charge, the mobiledevice can draw power from the display unit.

Since the display unit is totally separate from the mobile device, withappropriate security measures the user has the possibility to use anyappropriate display units other than his own. This means that if for anyreason the user does not have access to his display unit, the user canborrow, purchase or rent another display unit.

Data entry on the mobile device is accomplished through any of severalmethods, such as through a soft keyboard on a touch-screen display, asmall physical keyboard that is stored in the wallet, which can also beattached to the display or other mechanisms such as motion or gestureinput capability built into the display unit. In one embodiment, thedisplay unit also incorporates other I/O functionality such as amicrophone or speaker.

In addition to mobile devices, the display can be used with any otherelectronic equipment, such as a DVD or game player which is equippedwith the proper communication technology. In this scenario (FIG. 11B),the user can connect to any entertainment/information connectivitydevice such as a DVD player, a PC, or internet gateway, etc., and withproper authorization, can access and view the information/content on thedisplay. In the wireless connectivity embodiment, the display unitincludes a wireless receiver or transceiver. If the display unit is usedonly as a display device, only a receiver is used otherwise a wirelesstransceiver is employed. The choice of wireless technology depends onthe required bandwidth, range, and the particular application. For mostapplications which require video transmission at short distances, a highbandwidth, short-range technology such as ultra-wideband is used. Thewireless transceiver unit can be a customized design optimized forconnectivity to a particular mobile device or a (detachable)standards-based wireless communication module for connectivity through alocal or wide-area network.

In one embodiment, several small display units are stacked up (orfolded) and only one display unit (e.g. the one on top) is active. Whena larger display is needed, the smaller stacked units slide out (orunfold) and connect together to form a larger display (FIG. 11C.)Alternatively, additional small displays can be attached to an existingsmaller display to form a single larger display. The device recognizesthe addition of display modules and resizes the image to fit the largeraggregate display.

The detached display allows for a new usage model for sharing ofinformation/shared viewing of content (FIG. 11D.) Multiple display unitscan be provided to users so they can access the information/content on asingle device. Security measures allow for authentication of the displayunits which connect to the device. In addition to point-to-pointconnectivity, multi-cast connectivity can allow users to access theinformation on the device. The mobile device allows multiple detacheddisplays to connect to the device at different access levels. Uponsensing the presence of the main access device and attempting to connectto the device, the main unit verifies the permissions of the displaydevice and if access is granted, the display unit is registered on themain device and is configured with the proper access level. In oneembodiment, the main unit acts as a broadcast unit and sends the sameinformation to all display units—an example would be in a classdemonstration or conference setting. In another embodiment, each displayunit has individual access to send and receive informationindependently. The system allows for the individual display units to actas separate application windows on the mobile device (with propersecurity features which control guest access). As a result, each displayunit can allow the user to independently access authorized services,such as web access, etc. This allows multiple users connectivity andcontent access without the need for individual devices. In suchaforementioned embodiments, the display comes in detached form from themain unit. Some of the variations described herein are designed to beimplemented post-fabrication and pre-final assembly and delivery tocustomer, through the use of programmable logic, allowing customizationat reduced cost and time to market. This technology provides a robustsolution to applications such as multiplayer gaming, presentations inclassroom or conference settings, on-the spot access to mobile services,etc.

(2) Time-Based Information System (TIBIS)

The techniques introduced here include TIBIS, a time-based informationsystem of data organization. TIBIS is particularly suited toimplementation in a mobile device such as described above, while it isnot limited to a mobile environment. Although the sophistication of filesystems and their many different formats have continued to grow, thefundamental design element for these systems remain packing the mostamount of information in the least amount of space and facilitate accessto the information while providing data integrity based on theunderlying memory hierarchy of the system. Available storage systemslack a higher level of awareness and intelligence, which is particularlyevident in mobile device usage scenarios.

While content and general-purpose programming/flexibility forapplications remains of primary concern in a PC environment, in a mobileenvironment the primary factor is time. People typically use mobiledevices to have access to information on-the-go and to save time.Features of TIBIS allow a hardware and software environment to providerobust storage, integration, recognition, organization, recall anddisplay of time-based activities and events in a user-customizableformat.

Currently, most data is stored in electronic form in files. These filesare organized in various directories or folders based on the type offile or the relationship of the content of files. The files have a timestamp associated with them. Other than looking up the time stamp whenone looks at a file, the only other thing one can do with the time stampis to sort the files based on time in a given folder or directory.

In addition, files are randomly written in different areas of memory.When a file is deleted, an area in memory becomes available where thefile was written before. As more and more files are deleted, more areaopens up in memory, but the open (free) areas are not contiguous. Thisresults in fragmentation of data in memory.

With TIBIS, all files are organized based on time, with the granularityof time determined by the user. The user has control over periodicstoring of specific information. Activities, multimedia files, etc. areorganized in a time snap-shot. As new pieces of information are receivedor generated, they are written sequentially in memory. This requires alarge amount of memory over time. TIBIS provides a way to ease therequirements on the size of memory and store only information that theuser will need in the long-term, while allowing the user to continue tohave a snap-shot of relevant information.

(2A) Memory Architecture

FIG. 12 shows an embodiment of the Horizontal Repository Architecture(HM) of TIBIS. Each functional module (e.g., audio, video, etc.) of themobile device (or other type of processing system implementing TIBIS)has its own separate memory. Each stored content item has a multi-modaltag which includes pertinent information (metadata) for that item, whichis stored along with the item in a repository.

In implementing this unique storage and retrieval technology, HM unitsfor each device are provided to match the device's storage and accessrequirements. This means that individual functions' memory can bechanged over time, and different or same memory technologies may be usedfor different types of data storage and access requirements.

In addition to providing distinct and in some cases detachable,removable, expandable HM memory units, each stored item such as data,music, still photo or video is stored with a particular tag structure.FIG. 13 shows the generation and processing of tags in the time-basedmemory organization. Each tag is added to the actual stored element in apredetermined set of extended locations. A tag typically includesmetadata that answers one or more of the five questions (5Ws): “what”(can be user-defined), “when” (e.g. time/day/date), “where” (e.g.location of the device), “who” (e.g. sender and/or recipient of amessage) and “which” (e.g. source). Each function of the device (e.g.,audio, video, etc.) generates its own type of tag. Note that there canbe more tag categories than the above suggested five for certainapplications. These tags can be based on information type, userselection, user activity, and usage model.

An example of a simplified tag generation scheme is as follows: Upontaking a photograph with the still camera module, the locationcoordinates are retrieved automatically via the on-board GPS module orother location determining mechanism. This information is thencross-referenced against the personal address space of the user as wellas the calendar information to determine the exact location where theuser is likely to be. This can be further clarified by posing a questionto the user for a final clarification. The “actual” verified location isthen part of the tag associated with the photograph. Further, the timeand date is known, which is cross-referenced against the user's calendarand “dates of importance” file in the user preferences directory. Thisclarifies the exact occasion and can be even further clarified by posinga question to the user. This information also becomes part of the tag.In trying to retrieve or recall the photo, the user only needs toremember a part of the tag to be able to access the desired photo orinformation in general.

Further features of the tag can include character recognition as well aspattern, voice, and image recognition. Upon storage, a subset of allsuch available modalities of the data element becomes part of the tag.Over time tags are allowed to change automatically based on userpreference or usage pattern. For example, a tag can be dynamicallymodified to include such things as presence of a certain person in aphoto, at a time when such recognition is completed which can be muchlater than the time of capture or storage. The system allows for suchautomated as well as dynamic updates with or without user input.

As a further illustration of such method, assume a simple storageelement (data element) for a module is, for example, 256 bits and amemory word for data alone is 16 bits, then it takes 16 rows [forillustrative purposes, each memory word is shown as one row] of data tostore this element. If the design parameters allow up to 20 bits for thedata and tag space per word, then up to 64 bits can be used for a tag (4bits*16 words). If the storage element is 1 Kb for the same overall bitwidth of 16+4, then one needs 64 words to store that element. In thiscase one can have up to 256 bits for a tag.

In general, the tags are uniformly designed so that for most data typesand functional modules, one can go up to a certain maximum tag width.For example, if all one needed is 64 bits, then for the rest of thewords, the tag can be either repeated or driven to an agreed upon level.The implementation is design dependent. The ratio of data element size[function/module dependent] to data word size [design dependent]determines the number of memory words (rows) it takes to store such adata element.

In certain embodiments, a tag's width is determined by the ratio ofmaximum tag size required for a given module to the number of memorywords required for each data element. In this case the tag and data areproportionally assembled and disassembled. In other embodiments, the tagmay get appended to the first or last data word and recognized with anend-of-element flag. In yet another embodiment, the tag always getsstored in its entirety and then the data element begins.

In certain embodiments, the tags are fixed in size and the memory wordsize and depth is a design parameter based on each module's typicalelement size and timing requirements for the control signals. In somecases, the row of data to tag ratio is determined specifically for eachfunctional module and data type. Hence, customization happens at themodule level even for memory. In some cases, the size of the tag isdynamically allocated while additional bits allow for user ormachine-generated updating or extension of tags over time. These mayinclude user preference, usage pattern, or other criteria.

(2B) Store-Well, Retrieve-Well

The current state of the Internet is an excellent example of whathappens when all sorts of information is made available to everyone; theproblem is how does one find what one is looking for. Design of the nextlevel of search algorithms, semantics web, video search, etc. is wellunder way, and undoubtedly there will be improvements. It remains afact, however, that information is being added to the Web at a fargreater rate than the rate at which the algorithms are improving.

This problem can be addressed for relevant information generated oraccessed by a user by an integrated solution that will now be described.For organization and storage, the solution introduced here provides amechanism to collect enough information from the user, physicallocation, context and time to be able to automatically store theinformation in an appropriate manner and retrieve it easily withoutresorting to a complex and computationally intensive search. Even thoughit is comfortable to talk about “locations” when discussing files andinformation (something inherited from folders in file drawers days), itis becoming irrelevant and quite limiting to discuss locations whenthere are millions of files and bits of information generated everyhour. It is more appropriate to understand the uniqueness of eachmultimedia file as it is received/acquired and store it in a way thatfuture retrieval is seamless to the user and archiving, backup,deletions, etc. happen automatically. Such an approach increasesproductivity while reducing security and accessibility issues.

As described above, based on information type, user selection, activityand usage model the system generates and updates multi-dimensional tagsfor each piece of information (e.g. audio file, etc.) that the systemhandles. For each search/inquiry, a corresponding search tag isgenerated. The search tag is compared with the stored information tags.In some instances this is done by hardware, resulting in a very fastsearch. Content addressable memory (CAM) or other content searchtechnology can be used to provide a high-speed implementation. Acombination of hardware and software implementation can be used for thetag and content searches in certain instances, depending on the specificnature of the search. FIG. 15 illustrates the intelligent storage,search and retrieval technique described here, according to oneembodiment.

(2C) Time Based Architecture

TIBIS removes static applications and content from being the centralfactor in device architecture. Instead the primary design element of thesystem is capturing and providing “relevant”, “useful” and “timely”event information to the user. Each time snap-shot contains a record ofall activities the user chooses to record, store, and/or track for theselected time granularity (e.g., daily, hourly, weekly.). A timesnap-shot records relevant information, such as physical locationcoordinates of the mobile device (or other type device that isimplementing TIBIS), information received, transmitted, captured,created or opened by the device, conversations of the user, etc. Theinformation includes multimedia data such as audio, video, email, text,etc. The system has provisions for a set of information repositoriesthat include all files of the appropriate type (e.g., an audiorepository includes all audio files generated, received or stored by theuser) as described earlier in section 2(A).

In addition to the previously described Horizontal Repository (HM) usedfor content and tag storage, the TIBIS system is organized around twotypes of memory. One is called the Short-Term Memory (STM) and the otherLong-Term Memory (LTM). Initially, information is recorded sequentiallyin STM. The STM block granularity and time duration is determined by theuser and can be very short or very long, depending on the applicationand user preference (e.g. seconds, hours, days, etc.). During apredetermined amount of “inspection” period, the user has the option oferasing from STM any information deemed unimportant (e.g. an incomingjunk email, erroneous file, etc.). In one implementation, the inspectionperiod is chosen to be the amount of time it takes for the STM memory tobe filled. At the conclusion of the inspection period, any remainingdata is sequentially written to LTM. Any data/tag that is erased fromSTM memory causes its corresponding content/tag to not be written inLTM. Once data is written in LTM, it can no longer be changed. In ageneralized implementation, the option to give the user the ability toerase LTM can be provided by special permission.

As can be seen in FIG. 12, all of the tags from each function's memoryare collected for the selected time period and stored together as asuper-block, or “time snap-shot”, in STM. At the appropriate time (e.g.,when STM is reaches a pre-defined time limit), in one embodiment theuser is prompted to examine the tags and determine which contents andtags they wish to preserve. In the absence of additional user input, themobile device makes the decision based on an initial programmingdefault. In the aforementioned embodiments, the chosen contents of STMalong with the accompanying data as chosen by the user are written toLTM, and STM is cleared or overwritten. In another embodiment, the datamoves through a window of a given STM cycle, e.g. 30-days, while at thesame time each time snapshot (e.g. daily) is transferred to LTM in afirst-in first-out (FIFO) output manner. The time snap-shot has links toany blocks of data in the relevant repository that is accessed in thegiven time period. When data is moved to LTM, content and itscorresponding tags are saved in the LTM entry or the user can choose tokeep only the pointer to the content in the repository. In oneembodiment, once content is moved to LTM, the content is either clearedfrom or kept in the repository based on a user-defined preference listin an automated fashion.

FIG. 14 shows the data flow of the Modularized Mobile Architecture withTIBIS, according to one embodiment. FIG. 14 is essentially identical toFIG. 4, except that it further shows the LTM in relation to the coreengine and the functional modules. In at least some embodiments, the STMis implemented as memory that resides within the core engine. Further,in the illustrated embodiment the LTM is separate from the core engineand is coupled to the data exchange block through separate control anddata lines and to the core engine through separate control and taglines. In other embodiments, the LTM is implemented as memory within thecore engine. The LTM can be designed as a removable module, so that itcan be saved for archiving purposes as needed.

For a given time period, all appropriate functional module tags arecollected into a single tag block, called the STM block. STM iscomprised of the collective STM blocks. The contents of STM cantherefore be used to provide a complete “day view” to the user formultiple days, or similar view for any other selected time period. Upona request for retrieval of data, a fast search mechanism is then able toretrieve the data element by hardware, and in some cases software, bycomparing only the tags of data elements. In case a tag comparisonresults in multiple hits, the reduced set of data elements (tag hits) isthen subjected to a further search reducing complexity and time ofretrieval.

In addition, this memory architecture is designed to allow for userprogrammability of memory configuration, hybrid time-sector tagging ofmemory [ability to individually or hierarchically add additional tags totime slots or grouping of time slots], dynamically varying the timegranularity, and finer resolution time snap-shots inside anothersnap-shot.

In this system, problems with memory fragmentation are resolved, sinceno rewriting is done in previous segments of memory and data is alwayswritten in contiguous sections of memory. In addition, since the memoryis written based on time, one needs to backup any part of memory onlyonce, since contents of past memory cannot be modified (except where theuser is given the option of deletion). Therefore, periodic backups ofdata or changes to the data are not needed.

TIBIS provides data security and facilitates information audit. Sincethe system stores time snap-shots, it is straightforward to review pastactivities and information. The system enables auditing of pastinformation and activities such as financial transactions, medicalrecords, etc. easily.

TIBIS enables one to view a snap-shot of one's life by providing anautomated temporal, location & context-based digital journal of userinformation. This information can be stored in a non-volatile memoryspace on user's mobile device via a removable storage mechanism or on anetwork storage area connected to the user's device wirelessly or anetwork storage area connected to the user's information device via theworldwide web. In this case, a digital life journal consists of user'sevents, activities, appointments, locations, communications (calls,messaging, etc.), documents, multimedia content, all including the 5Wtags mentioned earlier in addition to any other user-defined categoriesfor any given time period. This can be used for personal, business, orlegal purposes.

One of the tasks handled by the core engine is assembling the STM blocksand coordinating the transfer of information to the LTM blocks. Inaddition, once the tags are generated and STM blocks are assembled, thecore engine has access to a set of well-organized information whichforms the basis of efficient operations for robust organization andplanning. The inventions described herein are employed to implement anautomated assistant system. This system creates a robust organizationaltool and provides proactive and anticipatory services and lifemanagement solutions for consumers.

Mobile devices periodically send a signal to the base station toregister their location. This is done through periodic locationprocedure. This is a requirement even when the device is in a stationarymode. This information is used to properly route incoming calls(mobile-terminated calls) to the proper mobile station. When a callcomes in, the mobile switching center (MSC) initiates a page over anumber of cell sites where the user's signal was last registered (e.g.10) and if not successful, the number of cell sites is increased inorder to locate the mobile device. In this invention, when a mobiledevice is stationary for a long period of time, a notification is sentto the base station to indicate that the device is stationary and it'slocation is fixed. This can be done automatically by the device afterdetecting being stationary for a period of time or initiated by thedevice when deciding to go into stationary mode for a period of time orautomatically based on user's anticipated activity as described earlier.The device will then stop periodic registration with the network,resulting in power savings on the device. In addition, the network onlykeeps track of the current location in it's registry, freeing up spaceat the MSC. In one embodiment, the signaling to the base station isaccomplished by setting a one bit flag (0: normal mode, 1: stationarymode.) The bit used can be any unused bit in the signaling structure. Inone embodiment, it is one of the unused bits in the mobile phoneidentifier (ESD) which is allowed to be modified by the device. Once thedevice enters stationary mode, the bit is set to 1 and when it changeslocation, the bit is set back to 0. In one embodiment, the deviceperiodically checks and if fading happens, it switches over to anothercell and reports it's new location.

In mobile devices, once the device registers with the nearest availablecell station, if it is not initiating a call, it goes into idle mode. Itstays in this mode until a call is initiated by the mobile or anincoming call is routed to the mobile device. In this mode, the deviceconstantly listens for page signals sent from the base station so it canreceive incoming calls. During the idle period, it is imperative to havevery low power dissipation since the device is in this state for a verylong time. In idle mode, the mobile device listens to the pre-assignedpaging channel, receives the information sent on that channel andcompares that to the known sequence that would indicate the page signalis intended for the mobile. This involves receiving the entire pagesequence and comparing the outcome with the known sequence. In thisinvention, power dissipation is significantly reduced by designing thesystem to only listen to part of the page signal (a period much shorterthan the total timeslot for the entire page sequence.) If a match isfound in the appropriate sequence, the next level of the sequence ischecked and if that also is a match, the next level is checked until theentire sequence of the page data is checked for a full match. The sizeof the reduced time slot (number of bits) and the number of successivepartial page matches are determined by the maximum time for page signalto be detected by the receiver as given by an established standard oracceptable performance. The power dissipation is further reduced byemploying a simple dedicated hardware (collection of XORs) instead ofusing the processor to do the matching of the page sequence. Thissignificantly speeds up the matching process and significantly reducespower dissipation since the processor will be off until an incoming callis detected. In certain embodiments, the partial wakeup signalsgenerated during this process can be used to trigger internal wake-upmechanisms within the system to ensure full system readiness by thecompletion of a full match.

(3) Automated Mobile Assistant System

The techniques introduced here include a mobile automated assistantsystem which performs automated assistant tasks for the user. The systemcomprises a multi-dimensional, multi-modal and multi-user schedulingenvironment which performs automated tasks on behalf of a user of amobile device or a registered user on an internet based service oralternatively a user of services who communicates with the main serviceprocessing center via various telephone or voice calling methods.

Using the present multi-dimensional scheduling environment a schedulingrecord for each client is constructed as shown in FIG. 17. FIG. 17 showsan example of multi-dimensional record for one client. Name1 to Name Nare the engagements for the client. Each client's schedule is allowed toexhibit various modes such as “travel”, “business”, “athletics” whichtake into consideration the HOME base for each mode and performproactive distance and driving calculations and notifications as well asproactive reservations, contacts notifications to name a few.

Although various members of the scheduling system are not necessarilysharing their information, the system is able to match users' andbusinesses' time schedules and report on possible meeting times, eventtimes or proactively schedule those in prospective clients' timeschedule.

The principle upon which the matching algorithms work is based on acluster of client databases which together comprise a web ofsynchronized clusters. FIG. 18 shows a cluster of client databases.Access to schedules is based on user authorization, authorized timeframes, or proactively based on proximity and location. There are twolevels of sharing that are implemented in this scheduling system:

(1) Allowing certain users in a group to share the entire schedule onthe calendar, including accompanying documents, information and tags.The user is permitted to block certain timeframes/documents as privateeven to this group. An example could be the user's immediate familymembers. In one embodiment, members of the group can add items to theuser's schedule.(2) Allowing specific timeframes to be open to sharing with certainauthorized users including an authorized subset of accompanyingdocuments, information and tags. The user is otherwise and at othertimeframes blocked to other users of the system. An example could becertain business associates. Members of this group are not generallypermitted to add items to the user's schedule.

These levels can be extended to encompass more sophisticated multi-levelpermissions as the application area warrants. Upon request, the systemcan produce a merged view for a designated group of users who haveelected to share their schedules such as a family, a work group or asocial group.

In the example shown in FIG. 18, the cluster of client databases allowJames Farrenheit to view Clark Kent's schedule directly, while ClarkKent can get two meetings scheduled with two other users without viewingtheir schedules via the system due to the common location and time oftheir presence. User Max Moore's schedule in certain time/locations isblocked to all except Clark Kent.

Referring to FIG. 19, each entry in a user's schedule is accompaniedwith a multi-dimensional tag, which in one embodiment is a five-elementtag describing answers to the five key questions: “what”, “when”,“where”, who” and “which” described previously. FIG. 19 shows elementsof a scheduled item. Additional tag categories can be included ifdesired.

This information is automatically generated at the time of creation ofeach data entry into the system and stored in local memory for theappointment subsystem. This is referred to as Horizontal Memory (HM) asdescribed earlier in this document. The HM stores the full contentaccompanied by a set of specified tags such as the ones describedearlier in this section.

Using this level of abstraction, the schedule shown to the user can beused to organize items via any of these five different categories. Thisalso enables aggregation of reports on schedules based on each of thecategories for past evaluations or future planning processes. Thesefields, called APPT TAG in FIG. 19, can be implemented withconsideration given to the available storage space as well as possiblenumber of sources available. Some fields may require less storage andsome allocation can be made to future expansion capabilities.

As shown in FIG. 20, a Cross-Website Communicator (XWC) is installed onthe mobile access server and on targeted websites across the network(e.g., the Internet) that allows for the mobile access server toautomatically communicate with other sites and facilitates automatedtasks such as scheduling, reservations, etc. The XWC on each site hasaccess to the appropriate data on its site and is therefore able toenable negotiation of various arrangements to arrive at a suitablesolution. The XWC also identifies the level of access to data fromincoming users and services and can choose which level of data isappropriate to be shared with the incoming requests and what type ofscheduling and other services are allowed for each requestor. In oneembodiment, the XWC links the access server network to customers'third-party service providers' network.

Still referring to FIG. 20, a cross-site calendar scheduler (XCS)performs algorithms for doing automated scheduling of events,appointments, etc. Each site has a priority-coded calendar with properaccess control which is supplied by the XWC installed on the site. Whenan authorized entity (with the proper authorization) requests anappointment, the calendar is made available to the requester who in turnwill compare the availability with that of the requester's calendar andfinds the suitable match, readjusts the availability of the time slot onboth calendars and resends the updated calendar. The matching andcalendar updating can occur at either side depending on what makes sense(e.g. the number of users who may be accessing calendars at the sametime). The preferred embodiment is to do the calendar matching andreservation on the network/stationary site where multiple users may needto access a specific calendar at the same time. In those cases, once acalendar or section of calendar is accessed for one user, other usersare blocked from access until the calendar or section of calendar thatis being used is updated and released.

Negotiation Algorithms:

One of the embodiments of this system is to schedule via the phone orthe web the best match for time among two person's or entities timetablevia a negotiation algorithm. Two such cases are demonstrated below. Itshould be noted that the phone version is equipped with voicerecognition and automated call placement and receive capabilities at theaccess server network end. On a third party service provider's end, thismay or may not be available. In case it is not available, options in theautomated calling and voice features are designed to walk the person onthe other end of the call to conveniently make choices and let theaccess server network know the best possible appointment option.

Phone-Link's Simplified Algorithm:

From an “Appointment Schedule” request:

-   -   1. Lookup destination contact information (contact list, web,        411 call, previous calls list, etc.) & their auto-call line (as        set up by Phone-Link directory)    -   2. Pick first best available timeslot for the particular        appointment based on preferences & travel times    -   3. Make call & request time based on first best time and/or        non-blocked time/days    -   4. Negotiate until mutual free time-slot is reached        -   Send first available time-slot        -   If OK, schedule; otherwise:        -   Receive other side's first available        -   Check availability of owner's time        -   If owner available, schedule        -   If unavailable, send second best available and/or ask for            their second best available & repeat    -   5. Notify owner of the agreed time and ask for change requests        to be entered as future Appointment Schedule requests    -   6. Update all related directories as indicated by dependency        setup file

Web-Link's Simplified Algorithm:

From an “Appointment Schedule” request:

-   -   1. Lookup destination contact information (contact list, web or        previous site visits' list) & Auto-Link URL (as set up by        Web-Link™ directory)    -   2. Pick first best available timeslot for the particular        appointment based on preferences & travel times    -   3. Connect to site & request time based on first best time        and/or non-blocked time/days    -   4. Negotiate until mutual free time-slot is reached        -   Send first available time-slot        -   If OK, schedule; otherwise:        -   Receive other side's first available        -   Check availability of owner's time        -   If owner available, schedule        -   If unavailable, send second best available and/or ask for            their second best available & repeat    -   5. Notify owner of the agreed time and ask for change requests        to be entered as future Appointment Schedule requests    -   6. Update all related directories as indicated by dependency        setup file

Direct Match Algorithms:

Another class of algorithms may be preferred where, instead of anegotiation scheme, the two parties exchange a series of data-orientedschedules, possibly in the form of a graphical representation of theusers' timetables. One such example is provided below:

Example Algorithm:

-   -   1. Lookup destination contact information    -   2. Set up communication link    -   3. Send out requested action (e.g. Person A's schedule in        graphical data form)    -   4. Recipient pulls out requested schedule    -   5. Upload your schedule (Graphical calendar shows open slots        (e.g. Green color), closed slots (e.g. Red color), negotiable        slots based on priority (e.g. Orange color)    -   6. Recipient system compares the two calendars and matches two        available slots that overlap, sets up the appointment for that        time slot, changes the color to red (unavailable)    -   7. Sends the updated schedule back to the requestor    -   8. Update all related directories

Principles: Time Schedule Design:

All of the above works when the initial Time Schedule is constructedwith automated scheduling in mind. This means based on the constructionand personalization of intelligent Preferences and Profiles system, theenvironment is constantly collecting and updating the information sothat all key factors regarding scheduling from a human perspective aretaken into account. Therefore, the intelligent construction of the TimeSchedule is very important.

Proactive:

All functions are aware of the other parts and are able to gainintelligence from what is happening in other areas from hardware as wellas software. If the memory usage in some part of the device is too high,it can alert the user and in some cases proactively move data acrosspartitions to prevent loss of information. It can also use informationhistory of activities, such as number of hours exercised to alert theuser to allow the device to schedule trainer or doctor appointments. Itcan also prompt user based on other parameters such as usage model,current or future location proximity, co-location with another user oncontact list, etc.

Secure:

Every device is tagged for a specific owner with his or her owncustomization and personality. This prevents theft and use of device byunauthorized persons. In addition to the ability to remotely disengagethe device from any access in case of knowledge of theft, the device iscognizant of activities that are not within the preferences files ofuser's indication. It can detect such cases and make back-doorverification of potential foul play quite timely and easily. This isdescribed further in the Automated Security section.

As part of the system, users can get a phone access number for personalautomated assistant services, such as the ability to call and confirmtheir schedule for the day or make appointments via an automated system.If needed, live help can be accessed. In addition, this system isavailable via the web and is also “active” meaning, changes andnotifications can be made on the spot. These services are for times whenthe user does not have the mobile device with him/her or when networkaccess in unavailable.

Under each category of tasks, the user is able to define the particularservice, create appropriate shortcuts for such services which aredirectly hardwired into the device for robust performance. These servicerequests are processed by the UI manager and placed in the Event RequestRepository shown in FIG. 16. The priority and timing of all servicerequests are managed by the Event Scheduler which schedules the nextrequest to be processed by the Task Manager which then connects to theCOM module to send the relevant information to the appropriate server(or an internal device module in case of some requests.)

Automated services to third party service providers are facilitated byprocessing of the requests on the mobile device and communicating theappropriate information to the web service (through the COM module) tofulfill the service request. The XWC and the XCS are used to connect todesired service or information providers, download or uploadinformation, and schedule events. This enables some of the automatedservices offered by the automated assistant system. FIG. 20 shows theautomated service processing between the mobile device and a third partyservice provider. The example shown is for an appointment request on athird party site.

The motivation behind this technique is to provide users with an “activeorganization tool.” Currently digital electronics calendars offer slightimprovements over traditional paper and pencil mechanisms. Some of thekey element that distinguish this technique from existing techniques arethat it is:

(1) Intelligent: context-aware, location-aware, and temporal-aware(2) Proactive: master-status with respect to update events, generatealerts and modify without prompting for user input(3) Anticipatory: designed to map future events into present andnear-term tasks

These characteristics are achieved in this embodiment via the TIBISdescribed earlier in this document. The overall engine controlling thecontrol path of one embodiment of a device is depicted in FIG. 21, whichshows the primary functions performing the essential operations in thedevice are predominately in hardware, which is implemented either inprogrammable or fixed logic and is accompanied by the appropriate memoryblocks to accommodate the user-interface working memory as well asdedicated display memory areas. This intelligence engine is made up of aset of hardware assist functionalities embedded inside the GSM block inthe core engine. FIGS. 16, 21 show the operations that are facilitatedby the core engine. The main building blocks of interest are:

Event Reporter: Collects information from stored tags and generatesstatistics on specific categories.

Event Manager: Monitors all current and short term plans and updates thetiming schedule. It also takes care of erasing STM contents based onuser preferences and handles current stats and updates the UI manager.

Event Scheduler: Monitors all module and machine generated requests forautomated actions and places entries in event request repository forscheduling.

Task Manager: Collects all requests for automated tasks and contacts thecommunications module for data, voice communication when available toperform automated tasks, as well as updating the user.

Module Data Manager and Module Tag Manager: Generate control signal torelease data to/from the modules and send and receive tag informationfrom specific modules to the main core engine to perform TIBIS relatedtasks.

User Interface (UI) Manager: interfaces all time/event managementfunctions to the user interface blocks driving this information to theuser interface based on user request profiles.

The device UI is driven by a display driver controlled by UI Manager.The UI Interface block takes direct input from (1) UI Manager controlledby the Task Manager and the Event Manager. These functional blocksmanage the past stats and future planning tasks and update the userinterface directly with relevant user information (2) User definedpreferences in UI user registers that are updated upon boot-up of thedevice and at regular user-defined intervals without booting up thedevice.

The UI Manager block takes the prioritized tasks and events as well asstatistics (“stats”) and “plans” supplied by the elements in the GSM anddisplays the information according to a pre-selected format onto thedisplay. This information resides in a dedicated local memory for UI.The UI manager also has access to communication and content repositorymemories and tags and can display relevant information, events, andcontents that are of interest to the user simultaneously on one screen.Note that similar to an appointment, other communications, events,contents, statistics, and planned tasks have their own specific memory(HM) with the associated tag system. Among other functions, the UImanager provides display input dispatched, context switching, dataupdate scheduling, display view assembly and UI memory update requesthandling. FIG. 22 shows functionality of the user interface (UI) of adevice for the automated assistant system.

FIG. 23 shows an overall system level view of functions of a mobiledevice such as described above, according to one embodiment. Alloperations within the mobile device can have a combination of softwareand hardware elements, with the core engine operations being primarilyhardware-based. The Core engine operations manage functional modules aswell as STM and LTM. The TIBIS engine encompasses the GSM operationswithin the core engine and manages the relevant operations for eventhandling. The Active Secretary component orchestrates the initiation andmanagement of tasks and proper presentation of information through UImanagement. The Active Secretary along with the web/phone servicesdescried earlier provide the Automated Assistant functionality. In thisembodiment, as you move from left to right, each level of operationbuilds upon the previous level.

Referring to FIG. 24, the concept of past/present/future is built intothe system. Past information provides statistics. The user is able toview summaries and statistics of user or machine-defined fields deducedfrom any tag field, time spent on activities, etc. Present informationprovides immediate direction for tasks and events, and futureinformation is represented by plans set by the user or scheduled by thesystem based on user needs. FIG. 24 shows a unified access viewpresented to the user. This is the output of the UI Manager as receivedby a display (a touch screen in this case) of a device such as a mobiledevice.

As shown on FIG. 24, the user has access to all communication, usercontent, and events in one unified view on one screen simultaneously.This capability is explained further below in the unified communicationssection of this description. In addition, the user can access allrelevant statistics, current schedule of activities and future plansfrom one screen in one step, as well as view progress tracking of plans.

The Automated Assistant System described above allows for providing avariety of automated services to the user. FIGS. 25-35 show examples ofvarious display screens on a mobile device which illustrate variousrepresentative automated services that are enabled by a device runningsuch a system. FIG. 25 shows an Alert/News setup screen for generationof Alerts and News items based on user-specified parameters orproactively generated based on usage pattern, current activity, physicalproximity, anticipated activity or proximity based on future schedule orplans or other data. The Alerts and News are defined by a set offunctions based on Money, Time, and Events. If the criterion issatisfied, an Alert or News item is generated and sent to the mobiledevice via a rolling ticker line.

The user sets up Alerts/News in 3 Major Categories of Money, Time &Event. The user chooses from a preselected list of action items andnames, amount, etc. For example, the system can be set up to send analert when a bill (e.g. monthly utility bill) goes above a set limit,chosen by the user, possibly implying some error in billing. If thishappens, the device sends an alert message on the Alert ticker at thebottom of the screen. Upon specifying an Alert/News condition, theappropriate source for that condition is checked at predetermined timeintervals. The particular parameter is checked against the Alertcondition and if the condition is met, the appropriate signal is sent toUI manger which then generates or updates the Alert ticker line. Oncethe condition is cleared, the UI manager is notified and it removes thealert from the screen. In the example above, the source is the monthlyutility bill and it is checked on a monthly basis. In the case of News,the source can be user or system-defined News or information outlets.The user can alternatively set up News and Alerts initially on the web.Under user direction, usage patterns, user location, user schedule, etc.the device is then enabled to find relevant advertisements or offers anddisplay them for the user across the Alert bar. As an example, the userspecifies certain airlines, geographic locations, and favoriteaccommodations. Any promotions or advertisements related to thesespecifics are funneled from the network's live advertising repository tothe user's specific area on the network. These are then matched againstthe users schedule, other preference files and their daily context. Uponreceiving a match on these checks, an alert notification is generatedand sent to the UI manager for display. In another example, the userspecifies interest in receiving promotions or advertisements fromcertain store, if user is within 2 miles of the store and only onSaturday mornings. The system then pulls the promotions from the storefrom its network repository and if the user-specified conditions aremet, an alert is generated and sent to the UI manager or display on thealert bar.

Mass customization in all aspects of business and more specificallyentertainment is leading to people choosing content over the medium overwhich the content is being provided. Programmable management system ofthe present invention takes away the confusion of having to find yourfavorite and essential programs through different media channels(cable/satellite's various channels as well as internet URL's, podcasts,blogs, etc.) This service takes the instructions from users anddownloads live and stored programs directly to their media receivingdevices. Media Service Providers (such as broadcast channels,cable/satellite operators, ISPs, etc.) deal directly with programmablemanagement system instead of end-users and are enabled to invest in highprofit and popular programs that users actually ask for, hence more of apull for their service than a dead end push where they cannot verifytheir effectiveness (advertising revenue and other considerations.) Theprogram also can search all sources and find content that you may beinterested in based on your previous selections or your profile or yourinput and brings those to you. This is good for providers since you arebringing the content to the customers' attention without them doingadditional marketing/advertising campaign. Have it for one location, youcan also receive it on your laptop or mobile-portable media,programmable management system keeps track of the changing formats, etc.for various devices.

In addition to the paid advertising and direct shopping channels andprograms, this invention is targeting any and all featured products andservices that are embedded within a regular broadcast or web programmingcontent. This includes passive and active product placements as well asinformational segments regarding a featured product or service withinanother program. The invention provides ample opportunity foradvertisers to increase their revenue stream, provide additionalinformation and promotional offers directly to customers.

Customized ad Distribution on TV Based on User Viewing Patterns

Advertisers on television base their advertising budget on the type ofshow that is broadcast at any point in time. They make assumptions aboutthe interest of viewers of such programs in their products. Given thelarge size and diversity of the population that watches each show, thisis far from targeted advertising. This invention describe a new way ofproviding ads for TV viewers that are much more targeted and mayactually be what consumers may be looking for, resulting in providing aservice to the user as well as the advertiser with a higher possibilityof creating a sale. In the proposed system, the viewing habits of theconsumer are observed over time both on what the consumer watches liveor what is viewed from recorded shows. In addition, other factors suchas the time of viewing of recorded shows, the combination of shows andthe duration of shows watched are also observed. Based on the data, aprofile is created of the viewer and his possible interests. The systemhas access to a number of ads that are cached locally in the system aswell as those that can be pulled on demand. The viewer is then showedads that are relevant to them. Based on which ads the user watches andwhich ones he skips quickly, future ads are further optimized. Inaddition, based on the user's profiled attention span, the system canprovide very short ads or longer length ads to suit the viewing patternsof the user. It also allows the ads to be tailored to the user, forexample if the profile suggests a visual person, versions of the ad withmore appealing visual effects are displayed, compared to more textualads or the ones with appealing sound effects. If the user chooses to doso, the personal profile based on their activities that is assembled onthe system can be shared with the ad distribution system to improve therelevance of the ads and product offers and incentives that the user maywant to purchase.

FIG. 26 shows a view of user appointments as seen on the display. Titlesof each appointment along with several user-selected fields representsome of the tags used in this case. The contents of the appointment arestored in appointments memory (in HM) accompanied by their respectivetag fields. This information is processed, assembled, and fed to thedata bus driving the display as part of the UI Manager block. The “Now”button is a dynamic pointer designating the closest calendar appointmentto the current time of day which provides the user a useful visual cueto pay attention to the next item on their potentially busy schedule.

FIG. 27 shows an example of the appointment detail for one appointment.In one step, the user gets access to a list of details for theappointment and its relevant supporting documents. Additionally, anotherone-step process allows for the organizers and attendees to be contacteddirectly. This is accomplished seamlessly to the user due to proactivescanning of information received for specific fields. Upon detection,tags are automatically updated and the information is routed to theappropriate directory residing in the specific memory block. Forexample, contact information is routed to the Directory HM which has thecapability of multiple viewing mechanisms, but more relevant to thiscase, is linked to all other datasets in a cross-reference manner. If ascheduled appointment is taking longer or the user is running late foran upcoming appointment, a user or system-generated notification is sentto all subsequent appointment contacts and the contacts are given theoption to readjust/reschedule their respective appointments.System-generated notifications are based on cross-referencing temporal,geographic, and contextual information available to the system. Upondetecting a mismatch, the user is prompted to confirm delivery ofnotification. In a multi-user system, the system adjusts schedules andresolves schedule conflicts and sends update notifications.

The device collects relevant information about directory entries in thedirectory HM. The directory HM contains specific data on directoryentries such as date and subject of last communication, relationship,known since, etc. Similar to the 5W's of an appointment tag, eachdirectory entry has multiple tags that convey the desired information tobe collected. Some tags are static or modified only under user inputsuch as a directory entry's biographical information. Other tags areautomatically updated by the system, such as communication history. Thesystem monitors appropriate HM entry tags that are linked to aparticular tag field in the Directory HM. Upon any change in thosefields, the system updates that tag field. This results in a livedirectory, where up-to-date information such as communication historyand other relevant content are available to the user within thedirectory and can be accessed in one step. The user is enabled to searchthe contents of any given HM dataset. A fast search on each requestedtag phrase is performed and the results are reported to screen.

FIGS. 29A, 29B illustrate examples of a screen showing one embodiment ofthe directory listing and directory detail pages. The user can accessdesired information on any directory entry, including documents, emails,call records, contact history in one place with one button click withoutany need for searching for such information. Any directory entry can bedragged and dropped into the desired category (for example to the familycategory) and the corresponding updates are made such that in all othermenus, the new information is presented (for example in the listscategory of FIG. 35)

The multi-user aspect of the scheduling system allows users to view adynamic version of their selected group's schedule on the fly from theirmobile device or the internet. In the following example, a user is ableto perform this via a dropdown on top of the appointments page. This isaccomplished by keeping user's information in cluster of clientdatabases. In case of sharing requests, these databases form a web ofsynchronized clusters on the network. On the client side, thissynchronization happens at scheduled intervals or upon finding unusedcommunication time on client's device and sending specific appointmentcontents' updates to the other clients respectively. This can also bedone upon request when the user asks to view this information live.Based on user selection, the information may be stored on the network orsolely reside on the client's mobile device. There is an option for theuser to drive the actual synchronization mechanism (via network, viaclient, live, offline (when not using the device) or at specific timeeach day or week.) FIG. 28 shows a screen in which the user is able toview another person's schedule using a drop-down menu step.

The automated assistant system offers a number of services. First, itorganizes all useful information in easily accessible formats. Forexample, by clicking on the Doctor icon on the service menu, the usergets a complete listing of all of their health care professionals. Theuser can contact them by one-click, can set up an appointment (routineor urgent), can expense the cost of the visit, etc.

The services offered can include, for example, time management throughautomatic scheduling; for example setting up routine appointments withthe doctor; automatic financial management; for example, monitoring allaccount balance, bill pay; automatic ordering; for example, orderingfood from local restaurant. In one embodiment, these services areenabled though the use of XWC kernel placed at websites which areconnected to our automated service and cross-site calendar negotiatingalgorithms described earlier.

FIG. 30 illustrates a screen in which a user is able to view all medicalcontacts and perform key tasks in one step. FIG. 31A illustrates ascreen in which a user is able to setup, view, update, and track plans.When a task is completed, automatically by the system in case of amachine-tracked task or manually by the user, the word DONE appears onthe line and the task is assumed to be complete. Progress on scheduledplans is then monitored by this data. FIG. 31B illustrates a screen inwhich the user can view progress tracking for tasks in specificcategories or time grouping.

FIG. 32 illustrates how a user is able to setup and automaticallyschedule and contact multiple classes of personal services and expensecosts. FIG. 33 illustrates how a user is able to setup multiple classesof automated appointments and expense costs. FIG. 34 illustrates how auser is able to manage bills and expense costs.

Automatic management of lists such as Christmas list, college alumnilist, etc. is easily managed in this system. The directory collectsinformation on various relationships and the device is able to setuplists based on specific user-defined properties found in the directoryas well as via direct user input. The UI allows the generation of listsand a one step method of contacting people on the list through phone,messaging or email. In the case of voice calls, the system allows forthe user to record a message. In one embodiment, the device calls allpeople on the list sequentially and the user talks on the phone, leavesa voice message, or leaves a voice message automatically with thecontents of the pre-recorded message. FIG. 35 illustrates how a user isable to set up, automatically contact, and manage lists andrelationships.

One of the automated tasks performed by the Automated Assistant isproactive security management. This level of security is offered throughthe information collected through the mobile device and available to thesystem about the user and his current and anticipated activities. Thedevice is able to detect circumstances that are not on the regulartime/space schedule or within the preference files of the owner of thedevice. Having a direct link between the location and temporalinformation of the TIBIS engine introduced earlier, the device generatesa security level for the present time. Upon changes in any number ofthese parameters, the device generates a higher alert level. At each newalert level, the device is enabled to perform additional security checksthat are only known to the owner of the device. The increased physicalinformation and biological checks are then introduced and in case of afailure, the options predetermined by the user at setup time areundertaken. In one circumstance, the device goes into shutdown and locksthe data on the device temporarily so it cannot be accessed but stillavailable to recover. In another circumstance, it uploads the contentsof the updated elements on the device on the network space which isassigned to the client and performs an immediate I/O access shutdown. Inanother circumstance it is to wipe out all the memory on the device viamaking it unreadable and unrecoverable by writing a predeterminedsecurity pattern on all accessible memory locations. In any of thecircumstances the user or other properly designated authorities can benotified of the location coordinates and type of security breach via thecellular network or any available wide-area wireless network availableto the device. In case of severe security alert levels, the panic signalis sent to the cellular network server whereby the notifications arethen submitted from that access point and the device is renderedinoperable immediately while downloading its latest information to thenetwork center server.

Currently access to device, service or stored information is protectedthrough the use of passwords. More recently, biological identificationmethods such as fingerprint or iris pattern identification are used asan added security measure. In this invention, a hybrid security systemis introduced where a combination of a biological identification and apasskey are combined to give much higher degree of protection. Thepasskey can be a simple password, a pre-determined pattern of biologicalidentification input (for example, one touch of the finger print,followed by no touch and then another touch, or a horizontal fingerprint, then a finger print at an angle, or eyes blinking in a pattern,etc.) In another implementation, other parameters such as bodytemperature, moisture, heart-rate, etc. (depending on the capabilitiesof the device) are also monitored to protect against cases where theauthorized user is under duress and is forced to provide the biologicalidentification against his consent. When such conditions are detectedand alarm is raised and either access is denied or access is granted butauthorities are alerted or access is granted in a revised alarm modewith limited features or special provisions which allows the apparentoperation of the device but the data provided access to is diverted to a“clone” database. The clone database can be similar to the actualdatabase but without the ability to modify the real database, or theclone database includes fake data. The choice of action depends on thetype of access requested and organizational and user preferences.Another embodiment of the invention is for access to a physical locationsuch as a car, home or office, a security box, etc. In this embodiment,the hybrid security system is used for physical access/entry. Thesecurity device also tracks time and info of the user which couldinclude other parameters such as a photograph. Information can be storedin the lock's “black box”. The black box info can be downloaded(wirelessly or wired) to a secure area and wiped off the lockperiodically. Opening/access to black box can require additionalauthentication.

In one embodiment the device is continuously monitored while in othersit is alerted for security breach due to specific events that ariseduring normal operation while unexpected due to usage protocol. Theemergency procedure can be triggered by the user in an emergency. Oneembodiment's simplified top-level algorithm is depicted in FIG. 36,which shows security processes for a mobile device. One embodimentdescribes a security system for mobile devices to protect against loss,theft, and unauthorized usage. The mobile device is equipped with GPSlocation awareness. In addition, it has access to the user's calendar,places he plans to go, the route he plans to take, office location, homelocation, places he is likely to be at based on past information oranticipated location possibilities, etc. Once the device has detectedthe location is not consistent with where the user should be, it willprompt the user with a security check either in the form of a question,password or a bio-id check. If the security check fails, the device islocked and the appropriate alerts are generated. In one implementation,the security check is not overt so as to not alert the unauthorized user(i.e. the question is in the form of a common system question whichmight be routinely asked and only the authorized user recognizes it as asecurity question, or the bio id check is done in a non-invasive mannersuch as taking a photo of the user or checking fingerprint or heart ratein the background). If the security check fails, the access to importantservices is disconnected without the users knowledge (dummy informationmay still be available to distract the unauthorized user), theappropriate alerts are generated and transmitted and the unauthorizeduser is tracked.

The system allows for users to define more complex services based on acombination of the automated services described earlier. The followingis an example of one such automated service: The user entersprescription details into the device, or the information isautomatically downloaded from user's medical record. The system ordersthe prescription through the pharmacy by automated call or throughwebsite. It confirms the availability of prescription (by automatedcheck with pharmacy or receiving notification from pharmacy) and sendsalert to user for pick up or arranges automated delivery. The systemkeeps track of refill information and automatically places refill ordera few days before due date, it prompts the user for re-order approval ifdesired. The system saves and tracks all prescriptions taken in“past/tracking” metrics and expenses cost. The user has full access toprescription usage history. The system notifies user of any possiblereactions of medications based on a search on a partner's medicinepairings directory. One of the optional modules for the mobile device isfor health monitoring. If such an option is used, the system gathersvital signs and keeps track of this information along with theprescription usage history so the user and other health professionalshave access to this information. The system transmits this informationto the designated healthcare professional or emergency service in caseof an adverse reaction or upon pre-determined schedule.

The Automated Assistant system is enabled via a customized operatingenvironment. This operating environment for mobile and electronicdevices allows for significant user input in the final appearance andfunctionality of user buttons within the use-case scenarios for a givendevice configuration.

The inventions described in this section, shown specifically for anadvanced mobile communication device, are applicable to any mobile orstationary consumer electronic device which is predominately used tocapture, send/receive, or access information and content.

There is an extended set of functionalities available to the userthrough direct hardware mapping of “button functionality” as well as“button locality” and “button visual and audio characteristics” so thatwithout increased delay or additional code required for OS toaccommodate such cases and without increasing power consumption, theuser is able to “define” the operation and function of the buttons.

In one embodiment, part of the rendering of images of user display isimplemented via programmable logic that is reconfigurable at the factoryas well as in post-assembly stage that can add additional modes for theuser views and options that the user is able to program directly and onthe fly through the use of extended UI memory area and the GSM controlblocks.

In one embodiment of this invention, the user is able to choose up to 15different functional buttons to be displayed for each page of theinterface. Each user button performs a specific user function and insome cases directs the user to additional choices/pages. The user isable to modify the placement, looks as well as the functionalityassociated with those buttons chosen from a larger set of availablefunctional options that the device is designed to perform depending onuser's need at the time. These buttons are later able to be reprogrammedas user's needs change. In addition to static buttons, the user is alsoable to choose dynamic buttons as well as other graphical oruser-generated icons, contents, avatars to enable user access as well asprovide for customization of the device environment.

Currently users are able to change only superficial levels of interfacein a limited fashion such as colors and ring-tones. The actual userinterface parameters are dictated by standardized operating systems thatfor the majority resemble identical environments for everyone as in thepersonal computer desktop market. As the OS used on the device changesso does the basic parameters of the interface.

In this technique, the user is able to change the look and feel of thedevice based on a set of customized functionality the device is designedto run while providing for additional functions and buttons as newmodules and programs are added to the system.

By making the user interface a primary “functionality” of the device andnot part of a standardized operating system, this technique decouplesthe standard directory structure and file system from the user interfaceof the electronic device. The device user interface is designed forconsumer mobile applications in its preferred embodiment and as such isoptimized to minimize the number of steps necessary for performingfunctions on the go. By allowing the user to program the functions andsequence of buttons for their specific use-cases, significant timesavings is achieved in performing user functions as well as a longerbattery life can be achieved due to less time used on power-hungrydisplay time when allowing the user to reach their most frequently usedfunctionality by going through the minimum number of key strokes ortouches or vice commands.

FIG. 37 shows multiple levels of functions in the user environmenthierarchy. In one embodiment, the functional options are viewable in adirectory structure, site map or visual button display. In each case theuser reviews the list as presented and prioritizes the functionalchoices to appear at each level of user interface. Additionally, theuser can predefine the method of activation for each functional button(e.g., voice, touch, secure-touch, visual id, just to name a few).

Additional choices are available to the user depending on the specificcontents of the page allowing for the same level of customization on aninter-page bases as well as the intra-page case shown above.

In one embodiment the user environment is presented to the user at thelowest level of the software stack; as a result, the changes made arerobust and immediately available for use. This is in contrast to changesthat need to take affect at the higher levels of abstraction. Theperformance and the corresponding mapping to device functionality aremost efficient in this case.

Examples of some features of the UI are shown in the screens of anadvanced mobile device illustrated in FIGS. 38 through 41. FIG. 38 showsa unified top-level view in a UI of a mobile device. More specifically,FIG. 38 shows that the user has access to up to 15 customizable buttons.The user has access to all communication, user content, and events inone unified view on one screen simultaneously. In addition, the user canaccess relevant statistics, current schedule of activities and futureplans from one screen with one click, as well as view progress trackingof plan.

After clicking on “call4svc”, the user gets access to a number ofservices simultaneously. These services and their implementations aredescribed earlier in this document. The user can choose the services ofinterest and how they appear on the screen. The following aredemonstrative samples:

FIG. 39 shows a customized call for service menu. The user can viewmultiple service choices simultaneously and can access any service inone-step while keeping abreast of critical machine generated alerts andnews bulletins. Under each category of service, the user is able todefine the particular service, create appropriate shortcuts for suchservices which are directly hardwired into the device for robustperformance. These services form the basis of Event Repository shown inFIG. 16 and managed by the GSM block intelligence.

As can be seen, the user can program additional conditions for “specificevent” notifications such as urgent messages or occurrence as well asongoing news and selected advertising feeds “at users' discretion” to bedisplayed in various forms upon the user interface.

The Core engine implementation has removed all the dependencies andtraditional OS management tasks from its functionality and it hascreated a large array of UI related functional hardware blocks such asthe UI register file and memory containing various user interfaces andtheir modifications in reconfigurable and hardware mapped memory blocks.The Alert and News bars can be closed on any screen or all of them.

FIG. 40 shows a screen for customized website access. In thisembodiment, the user is able to access up to 15 user-programmableone-touch access buttons to websites or personal pages.

The Automated Mobile Assistant System operates as a central location foraccess and management of all communication services of interest to theuser—including land-line and mobile voice mail, email, and messagingservices. The system provides the user access to all incoming voice/textmessage and emails no matter where they were sent to (e.g. home oroffice landline mailbox or mobile mailbox. The user selects themailboxes to be included in the system. This capability is used by theactive secretary to allow the user unified access to all messaging thatis of interest to the user. The user can manage all messaging channelsfrom the mobile device.

The voice, MMS, and email accounts to be monitored are initiallyregistered on the system by the user and proper authorizations areestablished (e.g. password, etc.) The system allows for customizedcombinations of push and pull transmit and receipt mechanisms. Pullservices download the requested messages to the device at time intervalsspecified by the user. Push services push messages onto the device asthey are received. The system allows for designation of specificattributes in the messages to trigger the message to be pushed onto thedevice and an alert to be generated and sent to the user. Thedesignation can include a specified phone number, email address, emailaccount, topic or key word in the message, etc. Any of these designatedmessages will be pushed onto the device while all other messages will betreated by the normal policy set by the user.

The system acts as a personal gateway for all messages for the user andmanages and routes messages according to user requirements andspecification.

In one embodiment, the designated phone numbers are handled differentlyaccording to the location of the mobile device and user context. Forexample, when the mobile device is at a location away from home, homecalls are routed to the voice message center. When the mobile device isin the home location, home voice calls are routed to the home phone. Inanother example, when on vacation the system routes office calls to themobile device but when at home in the evening, it routes them directlyto voice mail. In another example, all calls to the mobile device aresent directly to voice mail when user is involved with a particularactivity (e.g. at certain meetings) or in a particularlocation/establishment such as a restaurant, or a theatre without theneed to silence the device each time. All such selections are based oninitial user selection.

In this invention, multimedia messages are embedded in voicecommunications or messaging. A user can leave a voice message andinclude a multimedia file in the message. This is accomplished in any ofseveral ways. In the case of a VOIP call, the voice transmission is doneusing data transmission technologies. In this case, the transmittingdevice being the aforementioned mobile device can use the captured orgenerated multimedia content to attach to such call. In case of purecellular call scenarios where the call is going through cellular basestations as well as potentially a number of VOIP land connections, aslong as data-capable digital networks are used, the multimediatransmission is done through the data channel and the data istransmitted along with the call.

FIG. 41 shows an example of a unified communication messaging view on amobile device. The user has access to all mobile and landline calls,emails, and voicemails in one place and can access them with one clickof the assigned hot-buttons. Pressing any hot button will display thedetails of the messages from the given source.

In this system, a Location ID is included in every incoming call.Currently, every phone call (whether landline or mobile) is enabled witha Caller ID service which provides the phone number where the call wasoriginated from and the subscriber's name on the billing statement. TheCaller ID service is provided by the landline phone service provider,based on the caller number received by the telephone switch. This datais then modulated as a data stream and usually sent between the firstand second rings before the phone is picked up. The caller's namedetermined by the service at the terminating central office by lookingup service provider's or third-party databases and this information issent along with the phone number information to the recipient.

In this system, in addition to Caller ID, each call is enabled with aLocation ID, which identifies the location where the call originatedfrom. For land-line based calls, location is fixed and is generallyunderstood from the Caller ID information. For mobile based calls, theCaller ID information identifies the person who originated the call, butdoes not have information about the location where the call wasoriginated from. The Location ID is derived from the locationinformation available from the network and/or device. The AutomaticLocation Information (ALI) can be derived from network-based data, ornetwork-assisted GPS, or directly from GPS data available on the phone,depending on the device and network capabilities. Referring to FIG. 42,the ALI is requested by the Location Service (LCS) client from thePublic Land Mobile Network (PLMN) LCS server. The location is translatedto a logical location that is of value to the user. Public and privatedatabases, including geo-location directories are used to translate thelocation to a meaningful physical location. Depending on the precisionof the location, the location can be as wide as a geographical locationsuch as a city, or a neighborhood, or it can be as precise as aparticular location such as a business establishment.

The Location ID is sent to the user as a prefix or post-fix to the phoneCaller ID, or it is sent intermittently with the Caller ID (Caller ID,LocID), or is embedded in the name field along with the name. At theuser's personal network access or device, the LocID is translated to alocation that is personal to the user based on personal information ofthe user.

The user has the convenience of using one mobile device to send andreceive calls on multiple phone numbers. This can be accomplished byincluding multiple subscriber information on the subscriber identitymodule.

The user has the ability to use one phone number attached to severaldifferent mobile phones. This would be the case when for a variety ofreasons a user may want to receive mobile calls on different devices. Auser of the aforementioned customized mobile device may elect to havemore than one detachable communication module. Depending on which modulethe user is carrying, he may want to receive calls on that device. Thisinvention enables usage models such as additional built-in cellularcommunication functionality within a vehicle, boat, room, etc. Once inthose locations, the built-in device which has the same phone number asthe main device is used with access to the same user content. Thisprovides additional convenience and has added benefit of not using themain communication device's battery. The devices have to be registeredon the system appropriately such that outgoing calls are accounted forproperly, and incoming calls are routed appropriately by the mobileservice center (MSC) on the wireless network. In most mobile systems,the network includes location registries to keep track of mobile deviceson the system. For example, the home location registry (HLR) keeps trackof devices on the network in a given geographical area. The devices areidentified by unique identifiers that describe the specific physicaldevice as well as the phone number associated with that device. Undernormal circumstances, each phone number is uniquely associated with adevice. In this invention, a phone number is allowed to be associatedwith multiple “cloned” devices. All cloned devices have to be uniquelyidentified as clones so that at any point in time, only one device caninitiate a phone call or receive an incoming call. In a mobile network,each mobile device is identified with two unique numbers; the mobileidentification number (MIN), which corresponds to the assigned phonenumber, and the electronic serial number (ESN). In one embodiment, thecloned identifier is embedded in the phone's ESN. The ESN is a 32-bitnumber that consists of an 18-bit serial number, an 8-bit manufacturercode, and 6 reserved bits. In one embodiment, 2 of the reserved bits areused to indicate up to 3 additional cloned devices: 00→no clones,01→clone 1, 10→clone 2, 11→clone 3.

Additional bits can be used if more clones are needed but for mostpractical cases up to 3 clones is sufficient. The ESN is generally setat the factory but the clone bits are made to be modified in the fieldto allow for dynamic programming of the clones as needed. This isgenerally done along with the assignment of the mobile phone number tothe device.

When incoming calls come in, the network looks up the location of allthe mobiles in the home database which have the same phone numberassociated with them, this includes all the cloned devices. The pagingsignal is sent to all cell sites where the device or any of its clonesare registered. The network routes the calls to all registered mobileswhich are on at the time and answer the page signal. Once the call ispicked up by one of the mobile devices, the call is routed to thatmobile and the conversation/data transfer is initiated. The call to allother mobiles is dropped and those mobile devices are deactivated (i.e.they can not initiate or receive any calls). Once the call is finishedand the active mobile device goes back into idle mode, all other mobiledevices are activated and go back to the idle state. Once one of themobiles initiates a call, the other cloned devices are deactivated andstay deactivated until the call is finished at which time they all goback to the idle mode. This illustrates the implementation in oneembodiment. Provisions can be made on the network to implement otherembodiments of this invention to enable the user to assign the cloneidentifier numbers on the fly.

Various examples of the present disclosure are now discussed. A. Apersonal mobile device for communication and organization, comprising:

-   -   a core engine to coordinate operations of the mobile device,        including communication and organization functions; and    -   a plurality of modules coupled to the core engine, each of the        modules dedicated to perform a different one of a plurality of        classes of user-level functionality of the mobile device, each        said module including a processing element and memory dedicated        for use by said module.

B. A personal mobile device as recited in example A, wherein theplurality of classes of user-level functionality comprise two or morefrom the group consisting of: audio input/output, telecommunication,audio recording, image capture, image recording.

C. A personal mobile device as recited in the above examples, whereinthe mobile device has user-customizable functionality.

D. A personal mobile device as recited in the above examples, wherein atleast one of the plurality of modules is operable independently of thecore engine and all other modules of the plurality of modules.

E. A personal mobile device as recited in the above examples, whereinthe plurality of modules and the core engine collectively form amulti-function mobile electronic system.

F. A personal mobile device as recited in the above examples, whereinthe plurality of modules share information with and/or through the coreengine.

G. A personal mobile device as recited in the above examples, whereinthe shared information comprises tag information associated withcontent.

H. A personal mobile device as recited in the above examples, whereinthe plurality of modules share a data exchange block.

I. A personal mobile device as recited in the above examples, whereinthe plurality of modules are coupled to the core engine via sharedconnectors.

J. A personal mobile device as recited in the above examples, whereinthe mobile device is configured to have extendable functionality,wherein the functionality of the mobile device is extendable by addingone or more additional functionally distinct modules to the mobiledevice.

K. A personal mobile device as recited in the above examples, whereinthe mobile device has a user-customizable physical form factor.

L. A personal mobile device as recited in the above examples, furthercomprising a chassis which mounts, at least partially encloses or holdstogether of the plurality of modules, wherein the plurality of modulesare detachable from the chassis.

M. A personal mobile device as recited in the above examples, furthercomprising a detachable display device removably coupled to the coreengine.

N. A personal mobile device as recited in the above examples, furthercomprising a plurality of detachable display devices removably coupledto the core engine.

O. A personal mobile device as recited in the above examples, whereinthe mobile device can be shared by a plurality of users, each using aseparate one of the plurality of detachable displays.

P. A personal mobile device as recited in the above examples, whereinthe plurality of modules comprise a plurality of independently operabledisplay devices which are combinable to form a single larger displaydevice for the mobile device.

Q. A personal mobile device for communication and organization,comprising a core engine to coordinate operations of the mobile device,including communication and organization functions; and a plurality ofmodules coupled to the core engine via shared connectors, each of themodules dedicated to perform a different one of a plurality of classesof functionality of the mobile device, each said module including aprocessing element and memory dedicated for use by said module, whereinthe plurality of modules share information with and/or through the coreengine, wherein the shared information comprises tag informationassociated with content; and a chassis which mounts, at least partiallyencloses or holds together the plurality of modules, wherein theplurality of modules are detachable from the chassis, and wherein atleast one of the plurality of modules is operable independently of thecore engine and all other modules of the plurality of modules.

R. A personal mobile device as recited in the above examples, whereinthe plurality of classes of functionality comprise two or more from thegroup consisting of: audio input/output, telecommunication, audiorecording, image capture, image recording.

S. A personal mobile device for communication and organization,comprising a core engine to coordinate operations of the mobile device,including communication and organization functions; a plurality ofmodules coupled to the core engine, each of the modules dedicated toperform a different one of a plurality of classes of functionality ofthe mobile device, each said module including a processing element andmemory dedicated for use by said module; and a detachable intelligentdisplay for communication and/or as access to a mobile device and/orother devices.

T. A method of providing a time-based information system (TIBIS) in aprocessing system, the method comprising: accessing a memory facility inthe processing system; and storing data received by or in at least oneof the memory facilities sequentially based on time, according to adefined temporal granularity.

U. A method as recited in the above examples, wherein the processingsystem is a personal mobile entertainment, organization andcommunication device.

V. A method as recited in the above examples, wherein the definedtemporal granularity is user-defined.

W. A method as recited in the above examples, wherein the definedtemporal granularity is machine-defined.

X. A method as recited in the above examples, wherein said methodcomprises providing temporary storage and organization of event,information tags, or content in user-specified or machine-defined timeintervals in a short-term memory.

Y. A method as recited in the above examples, further comprisingproviding long-term storage and organization of events, informationtags, or content in user-specified or machine-defined time intervals ina long-term memory.

Z. A method as recited in the above examples, further comprisingpreventing modification of data in the long-term memory.

AA. A method as recited in the above examples, wherein the short-termmemory is local non-volatile memory of a mobile device.

AB. A method as recited in the above examples, wherein the long-termmemory is non-volatile memory of a mobile device.

AC. A method as recited in the above examples, wherein the long-termmemory is removable from a mobile device.

AD. A method as recited in the above examples, wherein the long-termmemory is non-volatile memory that resides remotely from the mobiledevice on a network.

AE. A method as recited in the above examples, wherein the methodcomprises using a multi-category tagging mechanism covering temporal,geographical/location, context as well as user-defined concepts.

AF. A method as recited in the above examples, wherein the methodcomprises generation, storage and distribution of multi-modal tagging ofevents in a mobile information device.

AG. A method as recited in the above examples, wherein the methodfurther comprises using hardware-based search and retrieval ofinformation based on the multi-modal tagging.

BA. An example of the present disclosure is a multi-function, mobileelectronic system that includes a housing, a plurality of functionallydistinct, independently operable sub-systems in the housing, at leasttwo of the sub-systems comprising a processing element and a memoryelement operably connected to the processing element, the processingelement and the memory element for each sub-system being dedicated tothe function of the respective processing element and memory element.

BB. An example as recited above including a master core engine tocontrol data exchange between the sub-systems.

BC. An example as recited above including a data exchange block undercontrol of the master core engine.

BD. An example as recited above wherein the sub-systems communicate withthe master core engine through control bits and content metadata.

BE. An example as recited above wherein the master core engine includesdedicated hardware.

BF. An example as recited above in wherein the processing and memoryelements are optimized for each individual sub-system. The memoryelements of different sub-systems can lend and borrow physical memoryspace to and from each other. The sub-systems can be selectivelyactivated to customize functionality of the system. The sub-systems canbe selected at an assembly/packaging stage. The sub-systems can providefunctionality independent of wireless technology or wireless serviceprovider, or both. The sub-systems can be removably attached to thehousing such that the one sub-system is removable from the housing.

BG. An example as stated above including the one sub-system to providewireless connectivity and can be removed and replaced to upgradewireless communication technology or change wireless service providerwithout changing the mobile system or the other sub-systems.

BH. An example as stated above, wherein the sub-systems can be directedconnected to each other.

BH. An example as stated above, wherein the sub-systems include at leastone additional display modules combined giving large display for mobilesystem.

BI. An example as stated above, wherein the sub-systems include aplurality of display modules that include a closed configuration toprovide a small display and an open configuration to provide a largedisplay. The closed configuration can include folded display modules.The closed configuration can include stacked display modules. Thesub-systems can include a plurality of detachable memory units in afunctional sub-system.

BJ. An example as stated above, wherein the sub-systems include asub-system to perform a function from a group consisting of healthmonitoring, biological sensing, and environmental sensing.

BK. An example as stated above, wherein at least one sub-system is adetachable intelligent display comprising display electronics and awired or wireless connection to another sub-system.

BL. An example as stated above, wherein each sub-system is independentlyoperable.

BM. An example of the present disclosure can include a multi-function,mobile electronic system that includes a support and a plurality ofsub-systems selectively attached to the support to provide customizableform factor. The plurality of sub-systems can be selected at assembly toform a round or polygonal system. The sub-systems can be detachable by auser to customize the form factor. The support can define a cylindricaldisk form factor and has a side connector channel to receive sub-systemstherein. The sub-systems can include connectors in top and bottomsurfaces thereof such that other sub-systems can connect thereto. Thesub-systems can include connectors in top and bottom surfaces thereofsuch that other sub-systems can connect thereto. The form factor cancreates a device to be worn on the body of the user with a least onesub-system extending outwardly for use as a phone microphone andspeaker.

BN. An example can include an electronic display that includes displayelectronics, a connection to a mobile device or other electronic device.The display can be a detached intelligent display comprising of thedisplay electronics and a wired or wireless connection to a mobiledevice or other electronic device. The mobile device can have ability toconnect to any compatible display unit other than its own. The detacheddisplays can attach to each other to form larger display. Each displayunit has user I/O capability and can capture user input and transmit toa main unit. The display can have the ability to have mobile or otherelectronic device shared by multiple users. In an example, the displayunits receive identical information sent from the mobile device to alldisplay units. In an example, each display unit provides its user accessto the main device and its capabilities independent of other users. Inan example, each display unit's authorization and access level isassigned by main unit at registration. In an example, the display unithas capability to connect to broadband internet gateway, enablingdisplay unit Internet access. In an example, the display unit has itsown battery. In an example, the display unit supplies power to mobiledevice if needed. In an example, the mobile device has ability toconnect to any compatible display unit other than its own. In anexample, detached displays attach to form larger display. In an example,each display unit's authorization and access level is assigned by mainunit at registration. In an example, a display unit has capability toconnect to broadband internet gateway, enabling display unit Internetaccess.

An example of the present disclosure can include a data exchange deviceincluding a core engine, a data exchange block operably coupled to thecore engine; and multiple connectors operably connected to the coreengine and being connectable to stand-alone mobile devices or modules toexchange information and expand functionality.

The techniques introduced above can be implemented in software and/orfirmware in conjunction with programmable circuitry, or entirely inspecial-purpose hardwired circuitry, or in a combination of suchembodiments. Special-purpose hardwired circuitry may be in the form of,for example, one or more application-specific integrated circuits(ASICs), programmable logic devices (PLDs), field-programmable gatearrays (FPGAs), etc.

Software or firmware to implement the techniques introduced here may bestored on a machine-readable medium and may be executed by one or moregeneral-purpose or special-purpose programmable microprocessors. A“machine-readable storage medium”, as the term is used herein, includesany mechanism that can store information in a form accessible by amachine (a machine may be, for example, a computer, network device,cellular phone, personal digital assistant (PDA), manufacturing tool,any device with one or more processors, etc.). For example, amachine-accessible medium includes recordable/non-recordable media(e.g., read-only memory (ROM); random access memory (RAM); magnetic diskstorage media; optical storage media; flash memory devices; etc.), etc.

The term “logic”, as used herein, can include, for example,special-purpose hardwired circuitry, software and/or firmware inconjunction with programmable circuitry, or a combination thereof.

Although the present invention has been described with reference tospecific exemplary embodiments, it will be recognized that the inventionis not limited to the embodiments described, but can be practiced withmodification and alteration within the spirit and scope of the appendedclaims. Accordingly, the specification and drawings are to be regardedin an illustrative sense rather than a restrictive sense.

1-16. (canceled)
 17. A mobile device, comprising: a processing element,a memory element operably connected to the processing element, adisplay, and a programmable management system; wherein the programmablemanagement system performs proactive and anticipatory services for theuser of said device, wherein said services include searching forpromotions available in a data network, storing said availablepromotions in an advertising repository residing on a data network,proactively searching said repository for specific criteria includinguser's direction, user's location, usage pattern, date and time, presentsecurity level or combinations thereof, continuously updating saidpromotions based on said specific criteria, retrieving said promotionsto a user-specific repository on the network upon finding matches withsaid criteria, monitoring said retrieved information against usercircumstances including user's schedule, preferences, preferences file,daily context, or combinations thereof, wherein daily context includestime of day, present location or present planned activities, pullingsaid promotions to a user specific device upon finding a match,delivering notification of said specific matches to the user.
 18. Themobile device of claim 17 wherein delivery of notifications of matchesto the user is performed by sending one or more of said notifications tothe device display.
 19. The mobile device of claim 18 wherein saidnotification is provided on an alert bar moving across the devicescreen.
 20. The mobile device of claim 18 wherein said notification isprovided to the device display by saving it in said matched promotionsrepository area on said device available for viewing on the devicedisplay.
 21. The mobile device of claim 20 wherein the notification isviewable at the user's request.
 22. The mobile device of claim 20wherein the notification is displayed at a predetermined or dynamicallyvariable daily context, wherein daily context includes time of day,present location or present planned activities.
 23. A mobile device,comprising: a processing element, a memory element operably connected tothe processing element, a display, and a programmable management system;wherein the programmable management system performs proactive andanticipatory services for the user of said device, wherein said servicesinclude accessing or receiving information from at least one ofinternet, audio or video receiver such as television or radio receiver,audio or video streaming, streaming or storing said information to bedisplayed or streamed during another daily context of a specificcriteria, displaying or streaming content, advertising or both, on saiddevice based on specific criteria including temporal, geographical,contextual, availability, user preferences, past activities, usagepattern, proximity to other users or events, or combinations thereof,displaying or streaming said content or advertising dynamically andfurther modifying or changing said content or advertising as a functionof said specific criteria, wherein daily context includes time of day,present location or present planned activities.
 24. A programmablemanagement method for an electronic system, the method comprising:providing proactive and anticipatory services for the user of saidsystem, including: searching for promotions available in a data network,storing available promotions in an advertising repository residing on adata network, proactively searching said repository for specificcriteria including user's direction, user's location, usage pattern,date and time, present security level or combinations thereof,continuously updating said promotions based on said specific criteria,retrieving said promotions to a user-specific repository on the networkupon finding matches with said criteria, monitoring said retrievedinformation against user circumstances including user's schedule,preferences, preferences file, daily context, or combinations thereof,pulling said promotions to a user specific device upon finding a match,delivering notification of said specific matches to the user by sendingto device display, on an alert bar moving across said device's screen orsaving it in said matched promotions repository area on said device tobe viewed at user's request or displayed at a predetermined ordynamically variable daily context, wherein daily context includes timeof day, present location or present planned activities.
 25. The methodof claim 24 wherein said specific criteria is dynamically updated. 26.The method of claim 24 wherein said user specific device is a mobiledevice.
 27. A programmable management method for an electronic system,the method comprising: providing proactive and anticipatory services forthe user of said system based on specific criteria including temporal,geographical, contextual, availability, user preferences, pastactivities, usage pattern, proximity to other users or events, orcombinations thereof; wherein said proactive and anticipatory servicesinclude: accessing or receiving information from internet, audio orvideo receiver such as television or radio receiver, audio or videostreaming or combinations thereof; storing said information includingcontent and advertising based on user-specific requests; dynamicallymodifying said content or advertising based on one or more of saidspecific criteria; displaying or streaming content, advertising or both,on said system based on said specific criteria.
 28. The method of claim27, wherein said system is a mobile or stationary device.
 29. The methodof claim 27, wherein said modification to content or advertisingincludes displaying or streaming a different version of the sameadvertising content depending on the viewing time or the present time ofsaid displaying or streaming.
 30. The method of claim 27, wherein saidmodification to content or advertising includes displaying or displayinga different content of advertising depending upon the viewing time orthe present time of said displaying or streaming.
 31. The method ofclaim 27, wherein said method includes displaying or streaming saidcontent or advertising upon dynamically modifying said content oradvertising according to changes in one or more of said specificcriteria.